summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/gpgpu-sim/gpu-sim.cc5
-rw-r--r--src/gpgpu-sim/gpu-sim.h4
-rw-r--r--src/gpgpusim_entrypoint.cc2
3 files changed, 7 insertions, 4 deletions
diff --git a/src/gpgpu-sim/gpu-sim.cc b/src/gpgpu-sim/gpu-sim.cc
index a557d6f..c894278 100644
--- a/src/gpgpu-sim/gpu-sim.cc
+++ b/src/gpgpu-sim/gpu-sim.cc
@@ -699,9 +699,10 @@ void gpgpu_sim::stop_all_running_kernels(){
void set_ptx_warp_size(const struct core_config * warp_size);
-gpgpu_sim::gpgpu_sim( const gpgpu_sim_config &config )
+gpgpu_sim::gpgpu_sim( const gpgpu_sim_config &config, gpgpu_context* ctx )
: gpgpu_t(config), m_config(config)
-{
+{
+ gpgpu_ctx = ctx;
m_shader_config = &m_config.m_shader_config;
m_memory_config = &m_config.m_memory_config;
set_ptx_warp_size(m_shader_config);
diff --git a/src/gpgpu-sim/gpu-sim.h b/src/gpgpu-sim/gpu-sim.h
index 5ea5765..b1d2e45 100644
--- a/src/gpgpu-sim/gpu-sim.h
+++ b/src/gpgpu-sim/gpu-sim.h
@@ -416,10 +416,11 @@ struct occupancy_stats {
}
};
+class gpgpu_context;
class gpgpu_sim : public gpgpu_t {
public:
- gpgpu_sim( const gpgpu_sim_config &config );
+ gpgpu_sim( const gpgpu_sim_config &config, gpgpu_context* ctx );
void set_prop( struct cudaDeviceProp *prop );
@@ -505,6 +506,7 @@ private:
void gpgpu_debug();
///// data /////
+ class gpgpu_context* gpgpu_ctx;
class simt_core_cluster **m_cluster;
class memory_partition_unit **m_memory_partition_unit;
diff --git a/src/gpgpusim_entrypoint.cc b/src/gpgpusim_entrypoint.cc
index c91a9d1..b54f20c 100644
--- a/src/gpgpusim_entrypoint.cc
+++ b/src/gpgpusim_entrypoint.cc
@@ -232,7 +232,7 @@ gpgpu_sim *gpgpu_context::gpgpu_ptx_sim_init_perf()
assert(setlocale(LC_NUMERIC,"C"));
GPGPUsim_ctx_ptr()->g_the_gpu_config->init();
- GPGPUsim_ctx_ptr()->g_the_gpu = new gpgpu_sim(*(GPGPUsim_ctx_ptr()->g_the_gpu_config));
+ GPGPUsim_ctx_ptr()->g_the_gpu = new gpgpu_sim(*(GPGPUsim_ctx_ptr()->g_the_gpu_config), this);
GPGPUsim_ctx_ptr()->g_stream_manager = new stream_manager((GPGPUsim_ctx_ptr()->g_the_gpu),g_cuda_launch_blocking);
GPGPUsim_ctx_ptr()->g_simulation_starttime = time((time_t *)NULL);