From 70798b1ba0a5b9a7242b48bf9598957476f8168b Mon Sep 17 00:00:00 2001 From: David Guillen Fandos Date: Mon, 6 Jun 2016 17:16:43 +0100 Subject: stats: Fixing regStats function for some SimObjects Fixing an issue with regStats not calling the parent class method for most SimObjects in Gem5. This causes issues if one adds new stats in the base class (since they are never initialized properly!). Change-Id: Iebc5aa66f58816ef4295dc8e48a357558d76a77c Reviewed-by: Andreas Sandberg --- src/gpu-compute/compute_unit.cc | 2 ++ src/gpu-compute/gpu_tlb.cc | 2 ++ src/gpu-compute/lds_state.cc | 8 -------- src/gpu-compute/lds_state.hh | 3 --- src/gpu-compute/tlb_coalescer.cc | 2 ++ src/gpu-compute/wavefront.cc | 2 ++ 6 files changed, 8 insertions(+), 11 deletions(-) (limited to 'src/gpu-compute') diff --git a/src/gpu-compute/compute_unit.cc b/src/gpu-compute/compute_unit.cc index 49029f815..b3a99b182 100644 --- a/src/gpu-compute/compute_unit.cc +++ b/src/gpu-compute/compute_unit.cc @@ -1447,6 +1447,8 @@ ComputeUnit::ITLBPort::recvReqRetry() void ComputeUnit::regStats() { + MemObject::regStats(); + tlbCycles .name(name() + ".tlb_cycles") .desc("total number of cycles for all uncoalesced requests") diff --git a/src/gpu-compute/gpu_tlb.cc b/src/gpu-compute/gpu_tlb.cc index 7a4f883f6..2021af9a9 100644 --- a/src/gpu-compute/gpu_tlb.cc +++ b/src/gpu-compute/gpu_tlb.cc @@ -958,6 +958,8 @@ namespace X86ISA void GpuTLB::regStats() { + MemObject::regStats(); + localNumTLBAccesses .name(name() + ".local_TLB_accesses") .desc("Number of TLB accesses") diff --git a/src/gpu-compute/lds_state.cc b/src/gpu-compute/lds_state.cc index 91ee8009a..d4a27318a 100644 --- a/src/gpu-compute/lds_state.cc +++ b/src/gpu-compute/lds_state.cc @@ -331,11 +331,3 @@ LdsState::TickEvent::process() { ldsState->process(); } - -/** - * - */ -void -LdsState::regStats() -{ -} diff --git a/src/gpu-compute/lds_state.hh b/src/gpu-compute/lds_state.hh index 89f08a1d3..58d109493 100644 --- a/src/gpu-compute/lds_state.hh +++ b/src/gpu-compute/lds_state.hh @@ -390,9 +390,6 @@ class LdsState: public MemObject void setParent(ComputeUnit *x_parent); - void - regStats(); - // accessors ComputeUnit * getParent() const diff --git a/src/gpu-compute/tlb_coalescer.cc b/src/gpu-compute/tlb_coalescer.cc index 835d7b740..c9b888d5f 100644 --- a/src/gpu-compute/tlb_coalescer.cc +++ b/src/gpu-compute/tlb_coalescer.cc @@ -546,6 +546,8 @@ TLBCoalescer::CleanupEvent::process() void TLBCoalescer::regStats() { + MemObject::regStats(); + uncoalescedAccesses .name(name() + ".uncoalesced_accesses") .desc("Number of uncoalesced TLB accesses") diff --git a/src/gpu-compute/wavefront.cc b/src/gpu-compute/wavefront.cc index ed13b22c7..7cdec53e5 100644 --- a/src/gpu-compute/wavefront.cc +++ b/src/gpu-compute/wavefront.cc @@ -88,6 +88,8 @@ Wavefront::Wavefront(const Params *p) void Wavefront::regStats() { + SimObject::regStats(); + srcRegOpDist .init(0, 4, 2) .name(name() + ".src_reg_operand_dist") -- cgit v1.2.3