Skip to content

Conversation

@oleksandr-pavlyk
Copy link
Contributor

@oleksandr-pavlyk oleksandr-pavlyk commented Jul 26, 2024

This PR improves SYCLInterface functions DPCTLDevice_CreateSubDevicesEqually, DPCTLDevice_CreateSubDevicesByCounts, and DPCTLDevice_CreateSubDevicesByAffinity.

These now check whether given device supports respective partition property before attempting it. If the input device does not support it, nullptr is returned without error logged.

Furthermore, DPCTLDevice_CreateSubDevicesByAffinity checks whether the input device supports partitioning over request affinity domain, and returns nullptr without error logged if it does not.

This changes became necessary since nightly SYCL bundles are now built with assertions on, and runtime hits an assertion specifying info::partition_affinity_domain::not_applicable which is not meant to be used as an input.

  • Have you provided a meaningful PR description?
  • Have you added a test, reproducer or referred to an issue with a reproducer?
  • Have you tested your changes locally for CPU and GPU devices?
  • Have you made sure that new changes do not introduce compiler warnings?
  • Have you checked performance impact of proposed changes?
  • If this PR is a work in progress, are you opening the PR as a draft?

Used info::device::partition_properties and
info::device::partition_affinity_domains to check whether give device
can be partitioned as requested before calling create_sub_devices
method.
1. Do not install FPGA emulator (reduces bandwidth, no longer
   supported by DPC++)
2. Install latest NumPy in build/test environment (removed <1.26.0
   restriction in pip install command)
@github-actions
Copy link

github-actions bot commented Jul 26, 2024

Deleted rendered PR docs from intelpython.github.com/dpctl, latest should be updated shortly. 🤞

@github-actions
Copy link

Array API standard conformance tests for dpctl=0.18.0dev0=py310ha798474_171 ran successfully.
Passed: 894
Failed: 1
Skipped: 119

@coveralls
Copy link
Collaborator

coveralls commented Jul 26, 2024

Coverage Status

coverage: 87.601% (-0.4%) from 87.96%
when pulling 30735b4 on fix-crash-testing-with-sycl-nightly-runtime
into 9403f76 on master.

@oleksandr-pavlyk oleksandr-pavlyk marked this pull request as ready for review July 27, 2024 15:01
@github-actions
Copy link

Array API standard conformance tests for dpctl=0.18.0dev0=py310ha798474_172 ran successfully.
Passed: 895
Failed: 0
Skipped: 119

Copy link
Collaborator

@ndgrigorian ndgrigorian left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nightly build now works so LGTM!

@oleksandr-pavlyk oleksandr-pavlyk merged commit ef9ebc8 into master Jul 29, 2024
@oleksandr-pavlyk oleksandr-pavlyk deleted the fix-crash-testing-with-sycl-nightly-runtime branch July 29, 2024 02:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants