HSA Developer Tools
Tools and SDK’s for HSA
HSA can be used to implement traditional GPGPU programming languages like OpenCL™ as well as new emerging standards like Microsoft C++AMP. HSA can also support broad set of languages ( System Programming, Application Programming, DSL) which will broaden the access of HSA programming to all levels of programmers.
Tools Programmers will be able to leverage HSA Run-time to build custom tools at different layers in the stack. HSAIL + AQL for full custom compilers ( GCC, etc) and Virtual Machines ( JVM,etc) , as well as leverage HSA enabled LLVM compiler stack, which generates HSAIL Binaries, for building compilers leveraging their choice in front ends.
HSAIL is HSA Intermediate Language which is the assembly language of HSA. LLVM compiler outputs to HSAIL binary object format which the HSA Finalizer ingests then translate to the native machine code of the Throughput computing unit( GPU, SPU)
The HSA Foundation is looking to work with companies that would like to engage in the development of tools, libraries and SDKs that support systems programming, application programming and domain specific programming.
- Khronos Group OpenCL™
- Microsoft C++ AMP
- CLANG based C++ AMP https://bitbucket.org/multicoreware/cppamp-driver-ng
- LLVM HSAIL Code Generator
- HSAIL Assembler and Dissembler https://github.com/HSAFoundation/HSAIL-Tools
- Fabric Engine KL Language and Run time for Python
- HSAIL Finalizer
- GCC-HSA branch: http://gcc.gnu.org/svn/gcc/branches/hsa/
- Java: Project Sumatra http://openjdk.java.net/projects/sumatra/
- HSAEMU Organization Development Driven by NTHU SSLAB
- HSAEMU Source Code of HSAemu
- HSAIL Simulator https://github.com/HSAFoundation/HSAIL-Instruction-Set-Simulator
- Okra Simulator Interface https://github.com/HSAFoundation/Okra-Interface-to-HSAIL-Simulator