StreamHPC / gromacs

OpenCL porting of the GROMACS molecular simulation toolkit
http://www.gromacs.org
Other
25 stars 4 forks source link

Implement kernel generation without variadic macros #26

Closed sharpneli closed 9 years ago

sharpneli commented 9 years ago

OpenCL 1.2 spec line 234 specifies "Variadic macros and functions are not supported"

In practice they seem to work on Nvidia and AMD implementations, however Intel implementation has a check for this and produces an error like this: "opencl\nbnxn_ocl_kernels.clh:56:32: error: variadic macros are not allowed in OpenCL"

In order to work on all platforms the kernel generation should be written to work without variadic macros.

ancahamuraru commented 9 years ago

OpenCL 1.1 has the same restriction. See chapter 6.8, point e: "Variadic macros and functions are not supported"

dkarkoulis commented 9 years ago

Fixed by #46