root icon indicating copy to clipboard operation
root copied to clipboard

[cling] Prototype SYCL support in ROOT

Open devajithvs opened this issue 1 year ago • 1 comments

This Pull request:

Adds a prototype implementation of SYCL support for standalone Cling. It works for standalone Cling, but is work in progress and is not ready for merge.

Changes or fixes:

Checklist:

  • [x] Clone AdaptiveCpp git repo instead of adding the whole AdaptiveCpp codebase to CLING (like clad)
  • [x] Clean up CMakeLists:
    • Currently, AdaptiveCpp is installed in a temporary directory to get include directories and acpp binaries for SYCL - now follows what is done for CLAD
  • [x] Building with ROOT works now
    • AdaptiveCpp requires LLVM be built with -DLLVM_LINK_LLVM_DYLIB=ON, which unfortunately ROOT doesn't support. Tried to get this working but this causes a cascade of issues. See: https://github.com/root-project/root/issues/12156#issuecomment-1660324761
    • Spent time trying various things, building AdaptiveCpp statically is what works. Some patches on top of adaptivecpp will be necessary
    • Cling builds and works independently, so it can be used in notebooks.
  • [x] Add test cases for SYCL
  • [x] Investigate DPC++:
    • DPC++ does not currently support JIT

To build, you need the flag: -Dexperimental_adaptivecpp

  • [x] tested changes locally
  • [x] updated the docs (if necessary)

Root's AdaptiveCpp fork (for static LLVM build and build-time usability - for genvectorx): https://github.com/root-project/AdaptiveCpp

Related: https://github.com/root-project/root/pull/18461

This PR fixes #

devajithvs avatar Dec 05 '24 11:12 devajithvs

Test Results

    20 files      20 suites   3d 20h 45m 1s ⏱️  3 662 tests  3 662 ✅ 0 💤 0 ❌ 71 518 runs  71 518 ✅ 0 💤 0 ❌

Results for commit 542df4c9.

:recycle: This comment has been updated with latest results.

github-actions[bot] avatar Dec 05 '24 11:12 github-actions[bot]

LGTM for the interpreter/ changes. I didn't check the rest (CMake setup in particular)

hahnjo avatar Jul 04 '25 06:07 hahnjo