Skip to content

Conversation

fknorr
Copy link
Contributor

@fknorr fknorr commented Oct 17, 2024

Single-pass compilation cannot provide __SYCL_DEVICE_ONLY__ detection macro, so we need to guard accessor hydration with __acpp_if_target_host(). This works because AdaptiveCpp does not verify that kernels are actually device copyable.

For DPC++ (and anything else) we still need to conditionally remove definitions for accessor copy and move ctors.

This now works on my machine ™️, but there is no CI integration yet.

@fknorr fknorr requested a review from psalz October 17, 2024 12:32
Copy link

Check-perf-impact results: (6dd39f6a6c050e624420039722ed76eb)

❓ No new benchmark data submitted. ❓
Please re-run the microbenchmarks and include the results if your commit could potentially affect performance.

@fknorr fknorr force-pushed the acpp-sscp branch 2 times, most recently from f62c4c4 to f29f56f Compare October 17, 2024 13:43
Copy link

Check-perf-impact results: (e884a5b266877a2f8b1f68ea7d0b8bef)

❓ No new benchmark data submitted. ❓
Please re-run the microbenchmarks and include the results if your commit could potentially affect performance.

@coveralls
Copy link

coveralls commented Oct 17, 2024

Pull Request Test Coverage Report for Build 11438165966

Details

  • 11 of 11 (100.0%) changed or added relevant lines in 2 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.005%) to 95.207%

Totals Coverage Status
Change from base Build 11385795991: 0.005%
Covered Lines: 6811
Relevant Lines: 6915

💛 - Coveralls

Copy link
Contributor

@PeterTh PeterTh left a comment

Choose a reason for hiding this comment

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

LGTM

Copy link
Member

@psalz psalz left a comment

Choose a reason for hiding this comment

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

LGTM!

@psalz psalz added this to the 0.7.0 milestone Oct 21, 2024
@fknorr fknorr self-assigned this Oct 21, 2024
Single-pass compilation cannot provide __SYCL_DEVICE_ONLY__ detection
macro, so we need to guard accessor hydration with
__acpp_if_target_host(). This works because AdaptiveCpp does not verify
that kernels are actually device copyable.

For DPC++ (and anything else) we still need to conditionally remove
definitions for accessor copy and move ctors.
@fknorr fknorr merged commit 09ef749 into master Oct 21, 2024
33 checks passed
@fknorr fknorr deleted the acpp-sscp branch October 21, 2024 11:27
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.

4 participants