[gmx-developers] Simplified and updated OpenCL compilation

Vedran Miletić vedran at miletic.net
Thu Jun 2 17:11:43 CEST 2016

On 06/01/2016 01:33 AM, Vedran Miletić wrote:
> Hi,
> new simplified OpenCL looks nice, aside from one rather minor complaint
> regarding error reporting. With a broken version of Mesa I get
> -------------------------------------------------------
> Program:     gmx mdrun, version 2016-beta2-dev-20160531-2142182-unknown
> Source file: src/gromacs/gpu_utils/ocl_compiler.cpp (line 470)
> Function:    _cl_program* gmx::ocl::compileProgram(FILE*, const string&,
> const string&, cl_context, cl_device_id, ocl_vendor_id_t)
> Internal error (bug):
> Failed to compile NBNXN kernels for GPU #AMD TONGA (DRM 3.1.0 /
> 4.5.5-300.fc24.x86_64, LLVM 3.9.0)
>   Could not build OpenCL program, error was CL_BUILD_PROGRAM_FAILURE
> For more information and tips for troubleshooting, please check the GROMACS
> website at http://www.gromacs.org/Documentation/Errors
> -------------------------------------------------------
> Previously I would get some garbage output in place of the
> CL_BUILD_PROGRAM_FAILURE sentence, which is a very nice improvement.
> However, I am missing the content from nbnxn_ocl_kernels.cl.FAILED that
> would contain
> Compilation of source file failed!
> -- Used build options: -DWARP_SIZE_TEST=64 -D_AMD_SOURCE_
> -DIATYPE_SHMEM -I"/usr/local/gromacs/share/gromacs/opencl"
> --------------LOG START---------------
> input.cl:59:10: fatal error: 'nbnxn_ocl_kernels_fastgen_add_twincut.clh'
> file not found
> input.cl:45:36: note: expanded from macro 'FLAVOR_LEVEL_GENERATOR'
> ---------------LOG END----------------
> These lines are not printed in .log file nor stderr. Can they be printed
> in the log or stderr? I will hopefully need this stuff less and less
> once Mesa is fixed, but it is still nice to know why is your build failing.
> Regards,
> Vedran

Simple change in order of function calls fixes it: 


Vedran Miletić

More information about the gromacs.org_gmx-developers mailing list