cancel
Showing results for 
Search instead for 
Did you mean: 

OpenCL

timchist
Elite

gfx900 binaries do not work on Vega 64 with HBCC segment enabled on 21.q3.1 pro driver

With 21.q2.1 and earlier drivers Vega GPUs have been reported as 'gfx900' (HBCC off) or 'gfx901' (HBCC on). In both cases the binary for gfx900 could be used and worked correctly. Binary for gfx901 could also be used, but worked somewhat differently (we obtain binaries by compiling OpenCL offline using the CL_CONTEXT_OFFLINE_DEVICES_AMD approach).

In 21.q3.1 pro the GPU is reported by OpenCL runtime as 'gfx900' regardless of HBCC settings. However with HBCC on, attempts to load binary for gfx900 result in an CL_BUILD_PROGRAM_FAILURE, with error log showin "Error: AMD HSA Code Object loading failed.\nError: Cannot set kernel \n".

gfx901 binary works when HBCC is on, but again, produces a slightly different output compared to gfx900.

When HBCC is off, only gfx900 binary can be used. Attempts to use a binary for gfx901 produces the same error as described above.

How can we check programmatically whether HBCC is enabled or no so that the correct binary is submitted to clCreateProgramWithBinary / clBuildProgram?

0 Likes
Reply
1 Reply
dipak
Staff
Staff

Re: gfx900 binaries do not work on Vega 64 with HBCC segment enabled on 21.q3.1 pro driver

Hi @timchist 

Thank you for the above query. I have forwarded it to the OpenCL team. Once I get their `feedback on this, I will share with you.

Thanks.

0 Likes
Reply