-
Notifications
You must be signed in to change notification settings - Fork 1.2k
CUDA: Remove items deprecated in 0.53 + simulator test fixes #6840
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Inspect methods now always return a dict if a signature is not specified.
This means that the useless ``.ptx`` property of fake kernels can be removed.
This should never skip on the simulator, it should always assume a condition as if cudadevrt were present.
Inspecting PTX makes no sense as a test on the simulator.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the patch, great to see this cleaned up. There's a few minor things to look at and once resolved this will be good to merge. Thanks again!
@stuartarchibald Many thanks for the review - comments should be addressed now. |
Is the fail a Frosty Thompson?
|
No, that's the fork from non-main thread problem reappearing, would guess TBB 2021 related. Frosty Thompson appears as a live lock. |
Fixed in #6966 |
Thanks for the fixes, please could you resolve the conflict against mainline, this can then have a build farm run? |
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
(Re-running due to conda 500 / 530 errors in the prior test run) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the patch and fixes.
Buildfarm ID: |
This failed. All fails are on windows.
Failure is the same on each:
|
These tests check for very specific patterns in the generated PTX that are unstable across toolkit versions, platforms, and other minor changes. Since these frequently need adjustment to match the generated PTX, and have never revealed an underlying issue, is seems more sensible to remove them instead of continually fixing them up in the presence of variations. Note that the latest issue was detected in the PR numba#6840 buildfarm run, with failures in test_const_record_optimization on Windows for CUDA 9.2 and 10.0. These failures arose because a change to compile the kernel with an explicit signature instead of specializing the kernel for given arguments changed the types the kernel was being compiled for on Windows - the default int on Windows is different to the default int on Linux. So this test wasn't even testing the same thing on Windows as on Linux, and this went unnoticed for a very long time!
@stuartarchibald Thanks for the report. I've removed the failing test and a similar one, for the rationale outlined in the commit message - in summary I think these tests are a bit unhelpful / nonsensical and have adjusted them several times over the course of various PRs. Explanation from the commit:
|
Thanks for the explanation @gmarkall. I agree, if these tests are not really adding anything but very susceptible to external/environmental changes then removing them seems to be the best solution. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the fix.
Buildfarm ID: |
This failed due to the issue in #7052. Once that's merged will re-run the build. |
@stuartarchibald / @esc Could this have another run now please? |
Buildfarm ID: |
Passed. |
This PR removes items deprecated in 0.53 and scheduled for removal in 0.54. These include:
compute_capabilty
kwarg to inspect methods.ptx
property of specialized dispatchers.definition
anddefinitions
property of dispatchers.Whilst working on this I discovered a couple of other issues in the simulator:
skip_if_cudadevrt_missing
always skipped tests on the simulator - this is now resolved.ptx
property of fake kernels has been removed, and the tests which inspected it are now skipped on cudasim.Some other remarks: