From 3d4d274eb3a6a23a5924b557d010590e219c5256 Mon Sep 17 00:00:00 2001 From: Davit Grigoryan Date: Tue, 28 Apr 2026 09:50:44 +0000 Subject: fix atomic counters; add more dbg prints --- src/gpgpu-sim/shader.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/gpgpu-sim/shader.h') diff --git a/src/gpgpu-sim/shader.h b/src/gpgpu-sim/shader.h index f25ba0e..51ed214 100644 --- a/src/gpgpu-sim/shader.h +++ b/src/gpgpu-sim/shader.h @@ -2503,6 +2503,12 @@ class shader_core_ctx : public core_t { const shader_core_config *config, const memory_config *mem_config, shader_core_stats *stats); + // Read-only diagnostic — dumps every warp's state (flags, ibuffer, + // simt_tables, scoreboard) to help localize a deadlocked warp. Called + // from gpu-sim.cc deadlock_check() under MEMCO_DBG_DEADLOCK env var. + // Public so simt_core_cluster can invoke without relying on friendship. + void dump_warps_at_deadlock(FILE *fout); + // used by simt_core_cluster: // modifiers void cycle(); @@ -3110,6 +3116,9 @@ class simt_core_cluster { unsigned max_cta(const kernel_info_t &kernel); unsigned get_not_completed() const; void print_not_completed(FILE *fp) const; + // Read-only diagnostic — dumps each non-empty core's per-warp state + // (see shader_core_ctx::dump_warps_at_deadlock). + void dump_warps_at_deadlock(FILE *fp); unsigned get_n_active_cta() const; unsigned get_n_active_sms() const; gpgpu_sim *get_gpu() { return m_gpu; } -- cgit v1.3