From 3b2306b471ea0b92fc07ebef54f8f261d9c55a29 Mon Sep 17 00:00:00 2001 From: Davit Grigoryan Date: Thu, 23 Apr 2026 07:34:57 +0000 Subject: co-issue global mem requests --- src/gpgpu-sim/mem_fetch.cc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/gpgpu-sim/mem_fetch.cc') diff --git a/src/gpgpu-sim/mem_fetch.cc b/src/gpgpu-sim/mem_fetch.cc index 809c920..e171d9e 100644 --- a/src/gpgpu-sim/mem_fetch.cc +++ b/src/gpgpu-sim/mem_fetch.cc @@ -46,7 +46,12 @@ mem_fetch::mem_fetch(const mem_access_t &access, const warp_inst_t *inst, m_access = access; if (inst) { m_inst = *inst; - assert(wid == m_inst.warp_id()); + // Sanity: the stamped wid matches the inst's warp_id, UNLESS this is a + // MEM co-issue transaction where the access carries an override source + // warp_id. In that case m_inst is a copy of the composite (whose + // warp_id is the primary) but wid is the originating warp. + assert(wid == m_inst.warp_id() || + access.get_source_wid() != (unsigned)-1); } m_streamID = streamID; m_data_size = access.get_size(); -- cgit v1.3