User Tools

Site Tools


start

**This is an old revision of the document!** ----

A PCRE internal error occured. This might be caused by a faulty plugin

===== Getting Started ===== gem5-gpu, like gem5, uses [[http://mercurial.selenic.com/|mercurial]] for version control. A short guide to mercurial can be found [[http://mercurial.selenic.com/guide/|here]]. A much longer, exhaustive coverage of mercurial can be found in the hg book, available online [[http://hgbook.red-bean.com/|here]]. Since gem5-gpu builds off of other projects, rather than fork gem5 and GPGPU-Sim, we make heavy use of mercurial patch queues. For more information, see the hg book chapter on patch queues: [[http://hgbook.red-bean.com/read/managing-change-with-mercurial-queues.html|http://hgbook.red-bean.com/read/managing-change-with-mercurial-queues.html]]. ==== Required Software ==== Since we build off of gem5, all of the dependencies of gem5 are also dependencies of gem5-gpu. It is suggested that before you try to compile gem5-gpu you compile a copy of gem5 to ensure these baseline dependencies are met. gem5 dependencies can be found [[http://gem5.org/Dependencies|here]], and more gem5 information can be found [[http://gem5.org/|here]]. The versions of software we have used to test gem5-gpu are listed [[http://goo.gl/S1ts6|here]]. Deviations from the tested versions may cause errors. ==== Create directory ==== * mkdir gem5-gpu * cd gem5-gpu ==== Clone gem5 and gem5-patches ==== You’ll need the gem5 revision found [[http://goo.gl/S1ts6|here]]. This revision is the latest that is known to work with gem5-gpu. <code> hg qclone http://repo.gem5.org/gem5 -p http://gem5-gpu.cs.wisc.edu/repo/gem5-patches cd gem5/ hg update -r <gem5-revision> hg qpush -a cd ../ </code> ==== Clone GPGPU-Sim and GPGPU-Sim patches (2 separate options) ==== A) The easy way (recommended): <code> hg qclone http://gem5-gpu.cs.wisc.edu/repo/gpgpu-sim -p http://gem5-gpu.cs.wisc.edu/repo/gpgpu-sim-patches hg qpush -a cd ../ </code> B) To have full control of GPGPU-Sim (harder): You’ll need the “gpgpu-sim-sha” found [[http://goo.gl/S1ts6|here]] <code> git clone git://dev.ece.ubc.ca/gpgpu-sim gpgpu-sim-complete cd gpgpu-sim-complete git checkout <gpgpu-sim-sha> This updates GPGPU-Sim the latest version that works with gem5-gpu cd v3.x source setup_environment release make cd ../../ ln -s gpgpu-sim-complete/v3.x/src gpgpu-sim cd gpgpu-sim hg init cd .hg/ hg clone http://gem5-gpu.cs.wisc.edu/repo/gpgpu-sim-patches patches cd ../ hg add hg ci -m “Initializing GPGPU-Sim Mercurial base” hg qpush -a cd ../ </code> **NOTE: If you setup GPGPU-Sim from the public git server instead of pulling from our repositories, you may not be able to submit review requests to our GPGPU-Sim patches repository** ==== Clone gem5-gpu glue code ==== <code> hg clone http://gem5-gpu.cs.wisc.edu/repo/gem5-gpu </code> ==== Build ==== <code> cd gem5 scons build/VI_hammer/gem5.opt --default=X86 EXTRAS=../gem5-gpu/src:../gpgpu-sim/ PROTOCOL=VI_hammer GPGPU_SIM=True </code> ==== Running ====

start.1360358002.txt.gz · Last modified: 2013/02/08 15:13 by jthestness