Sumatra with its HSAIL backend can run either using HSA-enabled hardware or using the HSAIL Simulator.    Similarly, you can run the graal junit tests with the either using HSA-enabled hardware or using the HSAIL Simulator.  These targets are accessible thru a single JVM codebase (in the hotspot part of the graal project).  The JVM uses the OKRA interface which then hides the details of the actual HSA runtime.  You can see the JVM code that uses OKRA in the graal hotspot src/gpu/hsail/vm directory, for example in src/gpu/hsail/vm/gpu_hsail.cpp

The OKRA interface can be seen at https://github.com/HSAFoundation/Okra-Interface-to-HSAIL-Simulator/blob/master/src/cpp/okraContext.h

 

  • No labels