Skip to content
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

Custom implementation of isfinite #1383

Closed
wants to merge 3 commits into from
Closed

Conversation

oleksandr-pavlyk
Copy link
Collaborator

This PR should address issues test failures from gh-1378

It works around very annoying SYCLOS bug introduced with pull down of clang 18.0

It adds a custom implementation of math_utils::isfinite to work around this failure.

  • 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?

@github-actions
Copy link

@coveralls
Copy link
Collaborator

Coverage Status

coverage: 85.635%. remained the same when pulling dca0650 on custom-is-finite into 9f98baf on master.

@github-actions
Copy link

Array API standard conformance tests for dpctl=0.14.6dev4=py310ha25a700_37 ran successfully.
Passed: 916
Failed: 84
Skipped: 119

@github-actions
Copy link

github-actions bot commented Sep 1, 2023

Array API standard conformance tests for dpctl=0.14.6dev4=py310ha25a700_38 ran successfully.
Passed: 916
Failed: 84
Skipped: 119

@oleksandr-pavlyk oleksandr-pavlyk marked this pull request as ready for review September 1, 2023 03:23
@oleksandr-pavlyk
Copy link
Collaborator Author

@ndgrigorian This PR has fixed SYCL-OS workflow.

@ndgrigorian
Copy link
Collaborator

This PR should address issues test failures from gh-1378

Nit but I think you meant gh-1375 here.

@@ -45,6 +46,7 @@ namespace isnan

namespace py = pybind11;
namespace td_ns = dpctl::tensor::type_dispatch;
namespace mu_ns = dpctl::tensor::math_utils;
Copy link
Collaborator

Choose a reason for hiding this comment

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

In isnan.hpp, math_utils is imported and the namespace is set, but never used to call mu_ns::isnan

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Pushed the fix. Thanks for spotting that out @ndgrigorian . I was after std::isnan instances and missed sycl::isnan.

@github-actions
Copy link

github-actions bot commented Sep 2, 2023

Array API standard conformance tests for dpctl=0.14.6dev4=py310ha25a700_39 ran successfully.
Passed: 916
Failed: 84
Skipped: 119

@oleksandr-pavlyk
Copy link
Collaborator Author

Since the issue has been fixed in SYCLOS, perhaps this PR can wait.

@github-actions
Copy link

github-actions bot commented Sep 6, 2023

Array API standard conformance tests for dpctl=0.14.6dev4=py310ha25a700_54 ran successfully.
Passed: 916
Failed: 84
Skipped: 119

1 similar comment
@github-actions
Copy link

github-actions bot commented Sep 6, 2023

Array API standard conformance tests for dpctl=0.14.6dev4=py310ha25a700_54 ran successfully.
Passed: 916
Failed: 84
Skipped: 119

@oleksandr-pavlyk oleksandr-pavlyk marked this pull request as draft September 7, 2023 09:49
This works-around a bug in std::isinfite recently introduced in SYCLOS
where std::isfinite(-0.0) returns false for floating point types, including
sycl::half, float, double.
@github-actions
Copy link

github-actions bot commented Sep 8, 2023

Array API standard conformance tests for dpctl=0.14.6dev5=py310ha25a700_4 ran successfully.
Passed: 916
Failed: 84
Skipped: 119

@oleksandr-pavlyk
Copy link
Collaborator Author

Closing as no longer relevant

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