gem5-gpu教程05 内存建模

memory-modeling|Details on how memory is modeled in gem5-gpu

====== gem5-gpu’s Memory Simulation ====== gem5-gpu, for the most part, eschews GPGPU-Sim’s separate functional simulation and instead uses gem5’s execute-in-execute model. Therefore, memory is updated/read when a store/load is executed. There is no separate functional path. (As a side note, this isn’t strictly true. Due to some peculiarities in Ruby, the memory is functionally simulated instead of held in the cache hierarchy. However, for the way you’re looking at the simulator this shouldn’t matter at all.) ===== Lifetime of a memory access ===== Here is a trace of a memory operation through gem5: - GPGPU-Sim executes a ld/st (see gpgpu-sim/gpgpu-sim/shader.cc: ldst_unit::memory_cycle_gem5) - The warp-wide instruction is converted into lane operations and sent to the LSQ unit (see gem5-gpu/src/gpu/gpgpu-sim/cuda_core.cc: CudaC

你可能感兴趣的:(前端,硬件架构,缓存,fpga开发)