Fundamental GPU Support
This MR introduces the fundamentals of GPU support to the new backend
General
- Introduce
GenericGpu
platform and threads range export: GPU platforms communicate the kernel's required thread grid size to the outside via aGpuThreadsRange
object separate from the AST - Add configuration options relating to GPUs
CUDA Platform
- Introduce CUDA platform
- Add materialization + guards for full and sparse iteration spaces
- Add materialization of math functions
SYCL Platform
- Introduce SYCL platform
- Add materialization + guards for full and sparse iteration spaces
- Add materialization of math functions
CUDA Just-In-Time Compiler
- Migrate implementation of
cupy
-based JIT to new backend as an object-oriented structure
Deviations and Missing Features
In the new implementation, block size selection is entirely up to the JIT / the runtime system and no longer affects the backend. Adaptive block sizes, register restrictions, etc. are not yet implemented by this MR.
Edited by Frederik Hennig
Merge request reports
Activity
Filter activity
added feature label
assigned to @da15siwa
added 7 commits
-
b85a6763...be07c320 - 6 commits from branch
backend-rework
- 03b9e02a - Merge branch 'backend-rework' into fhennig/sycl
-
b85a6763...be07c320 - 6 commits from branch
added 1 commit
- d447eb1b - fix work item indices. Add sycl indexing config.
added 7 commits
-
5d03477a...205ef895 - 6 commits from branch
backend-rework
- 33df1906 - Merge branch 'backend-rework' into fhennig/sycl
-
5d03477a...205ef895 - 6 commits from branch
added 1 commit
- 0ff6bb94 - add foreign_ast and CppMethodCall. Add proper index translation for SYCL.
mentioned in task #83 (closed)
added 1 commit
- b1b8f513 - first successful tests of cupy JIT; waiting for !393 (merged) to continue
added 3 commits
-
b1b8f513...3f2692e1 - 2 commits from branch
backend-rework
- c10870a5 - Merge branch 'backend-rework' into fhennig/sycl
-
b1b8f513...3f2692e1 - 2 commits from branch
added 1 commit
- 205feda4 - add field checking and args cache to cupy JIT
Please register or sign in to reply