summaryrefslogtreecommitdiff
path: root/src/gpgpu-sim/shader.h
diff options
context:
space:
mode:
authorTor Aamodt <[email protected]>2010-10-21 07:16:49 -0800
committerTor Aamodt <[email protected]>2010-10-21 07:16:49 -0800
commitdc93f319051a9a9936a02cd9c1f7843a382a2da0 (patch)
tree6c042ccab67be43b8fe442ab435ffbfd0f34e56e /src/gpgpu-sim/shader.h
parentee5ea34857e4ecc6c63d4971e549076c6a9888ba (diff)
1. rewriting memory access generation code (from scratch), why not...
passing CUDA 3.1 and ptxplus correlation, but correlation still bad (0.62)... after debugging 1 to get it working with ptxplus, problem is very clear: shared and constant cache accesses not occuring for operations that combine these with ALU operations. TODO: have a "read-operands" stage, which somehow combines operand collector register reading with shared and const memory accesses... [git-p4: depot-paths = "//depot/gpgpu_sim_research/fermi/distribution/": change = 7895]
Diffstat (limited to 'src/gpgpu-sim/shader.h')
-rw-r--r--src/gpgpu-sim/shader.h5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/gpgpu-sim/shader.h b/src/gpgpu-sim/shader.h
index b9e0bda..278fafc 100644
--- a/src/gpgpu-sim/shader.h
+++ b/src/gpgpu-sim/shader.h
@@ -105,7 +105,6 @@
#define WRITE_PACKET_SIZE 8
#define WRITE_MASK_SIZE 8
-#define NO_PARTIAL_WRITE (partial_write_mask_t())
//Set a hard limit of 32 CTAs per shader [cuda only has 8]
#define MAX_CTA_PER_SHADER 32
@@ -863,15 +862,13 @@ public:
void print(FILE *fout) const;
private:
- void generate_mem_accesses(warp_inst_t &pipe_reg);
-
bool shared_cycle( warp_inst_t &inst, mem_stage_stall_type &rc_fail, mem_stage_access_type &fail_type);
bool constant_cycle( warp_inst_t &inst, mem_stage_stall_type &rc_fail, mem_stage_access_type &fail_type);
bool texture_cycle( warp_inst_t &inst, mem_stage_stall_type &rc_fail, mem_stage_access_type &fail_type);
bool memory_cycle( warp_inst_t &inst, mem_stage_stall_type &rc_fail, mem_stage_access_type &fail_type);
mem_stage_stall_type process_memory_access_queue( cache_t *cache, warp_inst_t &inst );
- mem_fetch *create_data_mem_fetch(warp_inst_t &inst, mem_access_t &access);
+ mem_fetch *create_data_mem_fetch(const warp_inst_t &inst, const mem_access_t &access);
const memory_config *m_memory_config;
class shader_memory_interface *m_icnt;