From c4782ba3c78e6e97db9f56780991dc5cf827c755 Mon Sep 17 00:00:00 2001 From: Mengchi Zhang Date: Sun, 14 Jul 2019 13:06:46 -0400 Subject: Move warp_inst_sm_next_uid Signed-off-by: Mengchi Zhang --- src/abstract_hardware_model.cc | 15 +++++++++++++-- src/abstract_hardware_model.h | 18 +++--------------- 2 files changed, 16 insertions(+), 17 deletions(-) (limited to 'src') diff --git a/src/abstract_hardware_model.cc b/src/abstract_hardware_model.cc index fe10daa..1dddecd 100644 --- a/src/abstract_hardware_model.cc +++ b/src/abstract_hardware_model.cc @@ -41,8 +41,6 @@ #include #include "../libcuda/gpgpu_context.h" -unsigned warp_inst_t::sm_next_uid = 0; - void mem_access_t::init(gpgpu_context* ctx) { gpgpu_ctx = ctx; @@ -50,6 +48,19 @@ void mem_access_t::init(gpgpu_context* ctx) m_addr=0; m_req_size=0; } +void warp_inst_t::issue( const active_mask_t &mask, unsigned warp_id, unsigned long long cycle, int dynamic_warp_id, int sch_id ) +{ + m_warp_active_mask = mask; + m_warp_issued_mask = mask; + m_uid = ++(m_config->gpgpu_ctx->warp_inst_sm_next_uid); + m_warp_id = warp_id; + m_dynamic_warp_id = dynamic_warp_id; + issue_cycle = cycle; + cycles = initiation_interval; + m_cache_hit=false; + m_empty=false; + m_scheduler_id=sch_id; +} checkpoint::checkpoint() { diff --git a/src/abstract_hardware_model.h b/src/abstract_hardware_model.h index a22c8c3..519416d 100644 --- a/src/abstract_hardware_model.h +++ b/src/abstract_hardware_model.h @@ -958,19 +958,9 @@ public: { m_empty=true; } - void issue( const active_mask_t &mask, unsigned warp_id, unsigned long long cycle, int dynamic_warp_id, int sch_id ) - { - m_warp_active_mask = mask; - m_warp_issued_mask = mask; - m_uid = ++sm_next_uid; - m_warp_id = warp_id; - m_dynamic_warp_id = dynamic_warp_id; - issue_cycle = cycle; - cycles = initiation_interval; - m_cache_hit=false; - m_empty=false; - m_scheduler_id=sch_id; - } + + void issue( const active_mask_t &mask, unsigned warp_id, unsigned long long cycle, int dynamic_warp_id, int sch_id ); + const active_mask_t & get_active_mask() const { return m_warp_active_mask; @@ -1133,8 +1123,6 @@ protected: bool m_mem_accesses_created; std::list m_accessq; - static unsigned sm_next_uid; - unsigned m_scheduler_id; //the scheduler that issues this inst //Jin: cdp support -- cgit v1.3