diff --git a/doc/reference.rst b/doc/reference.rst index 9485c3b0347b66cc3515d139326820ef52b8be9d..80b9f6659501915937c4e39b356ab43e79920915 100644 --- a/doc/reference.rst +++ b/doc/reference.rst @@ -183,7 +183,7 @@ These are usually key-value pairs. The following attributes are recognized: .. note:: - Loopy will automatically add a depdencies of reading instructions + Loopy will automatically add depdencies of reading instructions on writing instructions *if and only if* there is exactly one writing instruction for the written variable (temporary or argument). diff --git a/loopy/kernel/array.py b/loopy/kernel/array.py index 7530c82e7ea8ec6925a2e5c4dc0cc8a44b3661db..57e82ff02f4cf4bbdc3a921bff48928acffb23e3 100644 --- a/loopy/kernel/array.py +++ b/loopy/kernel/array.py @@ -386,15 +386,16 @@ class ArrayBase(Record): each with identical properties, are created for each name. :arg dtype: the :class:`numpy.dtype` of the array. - If this is *None*, :mod:`loopy` will try to continue - without knowing the type of this array. + If this is *None*, :mod:`loopy` will try to continue without + knowing the type of this array, where the idea is that precise + knowledge of the type will become available at invocation time. + :class:`loopy.CompiledKernel` (and thereby + :meth:`loopy.LoopKernel.__call__`) automatically add this type + information based on invocation arguments. - Note that some operations, such as :func:`loopy.add_padding` - will not work without the *dtype*. + Note that some transformations, such as :func:`loopy.add_padding` + cannot be performed without knowledge of the exact *dtype*. - :class:`loopy.CompiledKernel` will automatically compile a kernel - with the right dtype when called with a concrete array on a kernel - with argument whose *dtype* is *None*. :arg shape: May be one of the following: * *None*. In this case, no shape is intended to be specified,