#####################################################
#####################################################
step1.
compile llvm-2.9
1-1. download clang-2.9 and llvm-2.9
1-2. move clang-2.9 to llvm-2.9/tools, and rename clang-2.9 to clang
1-3. need modify:
llvm-2.9:
step2.
compile HSAemu
2-1. run configure.sh
#####################################################
#####################################################
#####################################################
#####################################################
press "ctrl", "a" and "c" to enter QEMU monitro mod.
There are two options:
hsa_profile <level> -- show the profile data of HSAemu, when next time HSA component run.
The level is between 0 to 3.
hsa_reset -- reset HSA profile counter.
#####################################################
#####################################################
Supported Features:
Shared Virtual Memory: HSAemu support it. Both host compute unit and HSA component have MMU, accessing same page table.
User Mode Queuing: Because "Memory-Based Signaling and Synchronization" is not support, "doorbellAddress" is no used in User Mode Queuing.
Architected Queuing Language: Sync function is not support.
HSA Platform Topology Discovery: HSAemu only can emulate an APU in system currently.
Future Works:
Cache Coherency Domains: HSAemu don't emulate cache currently, so HSAemu not support it.
Memory-Based Signaling and Synchronization: not support currently.
Preemptive HSA Component Context Switching: not support currently.
HSA Component IEEE754-2008 Floating Point Exception Reporting: If host machine support IEEE754, then HSAemu support IEEE754. Because "Memory-Based Signaling and Synchronization" is not support, float excepertion can't report to user application.
HSA Component Hardware Debug Infrastructure: HSAemu only support printing register values currently.
Efficient Syscall Infrastructure: not support currently.
#####################################################
#####################################################
HSAemu only have runtime, and not follow specification yet.
#####################################################
#####################################################
HSAemu support arithmetic, memory, branch, and part of synchronization operations.
#####################################################
#####################################################
adviser: Yeh-Ching Chung Wei-Chung Hsu
project manager: Jiun-Hung Ding
contributor: Zhoudong Guo Chung-Ming Kao Bai-Cheng Jeng Kuo-Min Lin