help="number of physical banks per LDS module")
parser.add_option("--ldsBankConflictPenalty", type="int", default=1,
help="number of cycles per LDS bank conflict")
+parser.add_options("--lds-size", type="int", default=65536,
+ help="Size of the LDS in bytes")
parser.add_option('--fast-forward-pseudo-op', action='store_true',
help = 'fast forward using kvm until the m5_switchcpu'
' pseudo-op is encountered, then switch cpus. subsequent'
localDataStore = \
LdsState(banks = options.numLdsBanks,
bankConflictPenalty = \
- options.ldsBankConflictPenalty)))
+ options.ldsBankConflictPenalty,
+ size = options.lds_size)))
wavefronts = []
vrfs = []
vrf_pool_mgrs = []
shader.CUs = compute_units
########################## Creating the CPU system ########################
-options.num_cpus = options.num_cpus
-
# The shader core will be whatever is after the CPU cores are accounted for
shader_idx = options.num_cpus
env = [line.rstrip() for line in f]
else:
env = ['LD_LIBRARY_PATH=%s' % ':'.join([
- "/proj/radl_tools/rocm-1.6/lib",
- "/proj/radl_tools/rocm-1.6/hcc/lib64",
- "/tool/pandora64/.package/libunwind-1.1/lib",
- "/tool/pandora64/.package/gcc-6.4.0/lib64"
+ os.getenv('ROCM_PATH','/opt/rocm')+'/lib',
+ os.getenv('HCC_HOME','/opt/rocm/hcc')+'/lib',
+ os.getenv('HSA_PATH','/opt/rocm/hsa')+'/lib',
+ os.getenv('HIP_PATH','/opt/rocm/hip')+'/lib',
+ os.getenv('ROCM_PATH','/opt/rocm')+'/libhsakmt/lib',
+ os.getenv('ROCM_PATH','/opt/rocm')+'/miopen/lib',
+ os.getenv('ROCM_PATH','/opt/rocm')+'/miopengemm/lib',
+ os.getenv('ROCM_PATH','/opt/rocm')+'/hipblas/lib',
+ os.getenv('ROCM_PATH','/opt/rocm')+'/rocblas/lib',
+ "/usr/lib/x86_64-linux-gnu"
]),
+ 'HOME=%s' % os.getenv('HOME','/'),
"HSA_ENABLE_INTERRUPT=0"]
process = Process(executable = executable, cmd = [options.cmd]
for j in range(wavefront_size):
system.cpu[shader_idx].CUs[i].memory_port[j] = \
system.ruby._cpu_ports[gpu_port_idx].slave[j]
+ system.cpu[shader_idx].CUs[i].gmTokenPort = \
+ system.ruby._cpu_ports[gpu_port_idx].gmTokenPort
gpu_port_idx += 1
for i in range(n_cu):
########################## Start simulation ########################
-chroot = os.path.expanduser(options.chroot)
-redirect_paths = [RedirectPath(src = "/proc",
- dests = ["%s/fs/proc" % m5.options.outdir]),
- RedirectPath(src = "/sys",
- dests = ["%s/fs/sys" % m5.options.outdir]),
- RedirectPath(src = "/tmp",
- dests = ["%s/fs/tmp" % m5.options.outdir]),
- RedirectPath(src = "/dev/shm",
- dests = ["/dev/shm/%s/gem5_%s" %
- (getpass.getuser(), os.getpid())])]
+redirect_paths = [RedirectPath(app_path = "/proc",
+ host_paths =
+ ["%s/fs/proc" % m5.options.outdir]),
+ RedirectPath(app_path = "/sys",
+ host_paths =
+ ["%s/fs/sys" % m5.options.outdir]),
+ RedirectPath(app_path = "/tmp",
+ host_paths =
+ ["%s/fs/tmp" % m5.options.outdir])]
system.redirect_paths = redirect_paths
print("Ticks:", m5.curTick())
print('Exiting because ', exit_event.getCause())
-FileSystemConfig.cleanup_filesystem(options)
-
sys.exit(exit_event.getCode())