[Libclc-dev] GFX1010 support

Matt Arsenault via Libclc-dev libclc-dev at lists.llvm.org
Mon Jul 20 10:05:45 PDT 2020



> On Jul 19, 2020, at 09:12, Jan Vesely <jan.vesely at rutgers.edu> wrote:
> 
> 
> 
> On Wed, Jul 15, 2020 at 2:32 PM Matt Arsenault via Libclc-dev <libclc-dev at lists.llvm.org <mailto:libclc-dev at lists.llvm.org>> wrote:
> 
> 
> > On Jul 6, 2020, at 17:51, Aaron Watry via Libclc-dev <libclc-dev at lists.llvm.org <mailto:libclc-dev at lists.llvm.org>> wrote:
> > 
> > Sorry Jan (and everyone),
> > 
> > I forgot to hit reply-all when I sent the attached earlier.
> > 
> > —Aaron
> > 
> 
> A more substantial patch will be needed for wave32 support, which is supposed to be the default for compute
> 
> Can you elaborate? What changes will be visible on the IR level?
> 
> Jan
> 

The implementation of most cross-lane/reduction operations needs to be swapped depending on the wave size (not sure if those are fully implemented already in libclc). Some intrinsics (like llvm.amdgcn.ballot) need to be differently mangled. Other cases require emitting different/longer code for wave32 to handle both halves of the wave for example. ROCm-Device-Libs mostly handles the two wave sizes similarly to the other library control libraries, like libclc.

A few sample cases: https://github.com/RadeonOpenCompute/ROCm-Device-Libs/blob/amd-stg-open/ockl/src/lane.cl <https://github.com/RadeonOpenCompute/ROCm-Device-Libs/blob/amd-stg-open/ockl/src/lane.cl>
https://github.com/RadeonOpenCompute/ROCm-Device-Libs/blob/amd-stg-open/opencl/src/subgroup/subget.cl <https://github.com/RadeonOpenCompute/ROCm-Device-Libs/blob/amd-stg-open/opencl/src/subgroup/subget.cl>


-Matt

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/libclc-dev/attachments/20200720/80674869/attachment.html>


More information about the Libclc-dev mailing list