Skip to content

Tweaks needed for compute follows data implementation #1145

Open
@oleksandr-pavlyk

Description

@oleksandr-pavlyk

IntelPython/dpctl#797 changed equivalency relation between queues.

Previously two queues were equivalent if they had the same device, same context, and same properties. This made two copies of the same instance of sycl::queue as well as two distinct copies be equivalent.

The PR made it more stringent, so that distinct copies are no longer equivalent, i.e. dpctl.SyclQueue(dev) and dpctl.SyclQueue(dev) are no longer equivalent.

This revealed issues with dpnp. In constructors both device= and sycl_queue= keywords are used. They are complementary. Use only sycl_queue, e.g. https://github.com/IntelPython/dpnp/blob/master/dpnp/dpnp_array.py#L67-L69

Also in https://github.com/IntelPython/dpnp/blob/master/dpnp/dpnp_container.py#L97

Then at https://github.com/IntelPython/dpnp/blob/master/dpnp/dpnp_utils/dpnp_algo_utils.pyx#L403

again we are specifying both device and queue as the same time. Instead we should use normalize_queue_device and only pass the queue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions