Gromacs
2022-rc1
|
Declares the SYCL type traits.
Macros | |
#define | c_canEmbedBuffers true |
Sets whether device code can use arrays that are embedded in structs. More... | |
Typedefs | |
using | DeviceTexture = void * |
Type of device texture object. In SYCL, that would be sycl::image , but it's not used. | |
using | CommandEvent = void * |
Single GPU call timing event, not used with SYCL. | |
using | Float4 = sycl::float4 |
Convenience alias. | |
using | Float3 = gmx::RVec |
Convenience alias. Not using sycl::float3 due to alignment issues. | |
using | Float2 = sycl::float2 |
Convenience alias for sycl::float2. | |
#define c_canEmbedBuffers true |
Sets whether device code can use arrays that are embedded in structs.
That is not technically true for SYCL: the device code needs dedicated sycl::buffer/accessor
objects. But our prepareGpuKernelArguments
and launchGpuKernel
functions deal with that, so we can pass embedded buffers to them, which is what this constant actually controls.