Clean up kernel creation code in `codegen.driver`. Fix and dry-test SYCL codegen.
!449 (merged) accidentally broke SYCL code generation since SYCL kernels do not receive a launch config, but their kernel object expected one since it was being modelled as a GPU kernel.
This MR fixes this, alongside a few other improvements:
-
Target.SYCL
is no longer a GPU target -
SyclPlatform
no longer inherits fromplatforms.GenericGpu
, but directly fromplatforms.Platform
. - Emit SYCL kernels using
codegen.Kernel
instead ofcodegen.GpuKernel
- Combine the various kernel creation utility functions in
codegen.driver
into aKernelFactory
class for cleaner code - Move creation of
Lambda
s fromLambda.from_expression
toKernelFactory.create_lambda
- Add dry-dock tests for SYCL code generation that only test if the codegen driver runs successfully
Relates to #126
Edited by Frederik Hennig
Merge request reports
Activity
Filter activity
changed milestone to %Release 2.0
requested review from @zy69guqi
assigned to @da15siwa
mentioned in commit ae169020
Please register or sign in to reply