Difference between revisions of "GPU Models"
(→GCN3 Based Simulation) |
(→AMD's Compute-GPU Model) |
||
Line 3: | Line 3: | ||
The GCN3 ISA is supported in [https://gem5.googlesource.com/amd/gem5/+/agutierr/master-gcn3-staging AMD's public pre-release gem5 repo] on the branch agutierr/master-gcn3-staging. | The GCN3 ISA is supported in [https://gem5.googlesource.com/amd/gem5/+/agutierr/master-gcn3-staging AMD's public pre-release gem5 repo] on the branch agutierr/master-gcn3-staging. | ||
− | + | ===== Cloning the repository ===== | |
To clone the repo with GCN3 support use the following command: | To clone the repo with GCN3 support use the following command: | ||
<code>git clone https://gem5.googlesource.com/amd/gem5 -b agutierr/master-gcn3-staging</code> | <code>git clone https://gem5.googlesource.com/amd/gem5 -b agutierr/master-gcn3-staging</code> | ||
− | + | ===== Building the simulator with GPU and GCN3 support ===== | |
Currently, the GPU model only works with X86 and the VIPER protocol, which you can read about in the slides from AMD's 2018 ISCA tutorial. | Currently, the GPU model only works with X86 and the VIPER protocol, which you can read about in the slides from AMD's 2018 ISCA tutorial. | ||
To build gem5 with a GCN3-based GPU model included use the following command: | To build gem5 with a GCN3-based GPU model included use the following command: | ||
Line 14: | Line 14: | ||
<code>scons -sQ -jN ./build/GCN3_X86/gem5.opt</code> | <code>scons -sQ -jN ./build/GCN3_X86/gem5.opt</code> | ||
− | ==== ISCA 2018 Tutorial ==== | + | ===== ISCA 2018 Tutorial ===== |
A tutorial was held on June 2nd, 2018, in conjuction with the 45th International Symposium on Computer Architecture (ISCA). Our presentation can be found here: [[Media:AMD_gem5_APU_simulator_isca_2018_gem5_wiki.pptx | The AMD gem5 APU Simulator: Modeling GPUs Using the Machine ISA]]. | A tutorial was held on June 2nd, 2018, in conjuction with the 45th International Symposium on Computer Architecture (ISCA). Our presentation can be found here: [[Media:AMD_gem5_APU_simulator_isca_2018_gem5_wiki.pptx | The AMD gem5 APU Simulator: Modeling GPUs Using the Machine ISA]]. | ||
=== HSAIL Based Simulation === | === HSAIL Based Simulation === | ||
− | ==== MICRO-48 Tutoral ==== | + | ===== MICRO-48 Tutoral ===== |
A tutorial was held in conjunction with MICRO-48. We have made the slides available from our 2015 tutorial titled: [[Media:AMD_gem5_APU_simulator_micro_2015_final.pptx | The AMD gem5 APU Simulator: Modeling Heterogeneous Systems in gem5]]. | A tutorial was held in conjunction with MICRO-48. We have made the slides available from our 2015 tutorial titled: [[Media:AMD_gem5_APU_simulator_micro_2015_final.pptx | The AMD gem5 APU Simulator: Modeling Heterogeneous Systems in gem5]]. | ||
− | ==== Emualted CL Runtime ==== | + | ===== Emualted CL Runtime ===== |
* Download the [http://www.gem5.org/dist/current/gpu/cl-runtime.tar.xz emulated OpenCL runtime]. | * Download the [http://www.gem5.org/dist/current/gpu/cl-runtime.tar.xz emulated OpenCL runtime]. | ||
− | ==== OpenCL Compiler ==== | + | ===== OpenCL Compiler ===== |
[https://github.com/HSAFoundation/CLOC CLOC] is used to compile OpenCL kernels for use with gem5's GPU compute model. The most recent revision of CLOC that is known to work with gem5 is: | [https://github.com/HSAFoundation/CLOC CLOC] is used to compile OpenCL kernels for use with gem5's GPU compute model. The most recent revision of CLOC that is known to work with gem5 is: | ||
Revision as of 11:29, 5 July 2018
Contents
AMD's Compute-GPU Model
GCN3 Based Simulation
The GCN3 ISA is supported in AMD's public pre-release gem5 repo on the branch agutierr/master-gcn3-staging.
Cloning the repository
To clone the repo with GCN3 support use the following command:
git clone https://gem5.googlesource.com/amd/gem5 -b agutierr/master-gcn3-staging
Building the simulator with GPU and GCN3 support
Currently, the GPU model only works with X86 and the VIPER protocol, which you can read about in the slides from AMD's 2018 ISCA tutorial. To build gem5 with a GCN3-based GPU model included use the following command:
scons -sQ -jN ./build/GCN3_X86/gem5.opt
ISCA 2018 Tutorial
A tutorial was held on June 2nd, 2018, in conjuction with the 45th International Symposium on Computer Architecture (ISCA). Our presentation can be found here: The AMD gem5 APU Simulator: Modeling GPUs Using the Machine ISA.
HSAIL Based Simulation
MICRO-48 Tutoral
A tutorial was held in conjunction with MICRO-48. We have made the slides available from our 2015 tutorial titled: The AMD gem5 APU Simulator: Modeling Heterogeneous Systems in gem5.
Emualted CL Runtime
- Download the emulated OpenCL runtime.
OpenCL Compiler
CLOC is used to compile OpenCL kernels for use with gem5's GPU compute model. The most recent revision of CLOC that is known to work with gem5 is:
commit cf777856cfce86d11ea97c245992971159b85a4d
ARM's NoMali GPU Model
The NoMali GPU model models the interface used by ARM Mali GPUs. The model does not render or compute anything, but can be used to fake a GPU. This enables Android and ChromeOS experiments without software rendering which would otherwise make simulation results extremely misleading. It was presented in the 2015 gem5 User Workshop.
Getting started instructions are currently available for Android 4.4 (KitKat).