diff options
Diffstat (limited to 'src/mem')
-rw-r--r-- | src/mem/cache/blk.cc | 3 | ||||
-rw-r--r-- | src/mem/cache/blk.hh | 7 | ||||
-rw-r--r-- | src/mem/cache/tags/base.cc | 15 |
3 files changed, 6 insertions, 19 deletions
diff --git a/src/mem/cache/blk.cc b/src/mem/cache/blk.cc index 233f38052..ad0c20a6f 100644 --- a/src/mem/cache/blk.cc +++ b/src/mem/cache/blk.cc @@ -46,9 +46,6 @@ void CacheBlk::insert(const Addr tag, const State is_secure, const int src_master_ID, const uint32_t task_ID) { - // Touch block - isTouched = true; - // Set block tag this->tag = tag; diff --git a/src/mem/cache/blk.hh b/src/mem/cache/blk.hh index b634d21f1..561d50282 100644 --- a/src/mem/cache/blk.hh +++ b/src/mem/cache/blk.hh @@ -109,12 +109,6 @@ class CacheBlk : public ReplaceableEntry */ int set, way; - /** - * Whether this block has been touched since simulation started. - * Used to calculate number of used tags. - */ - bool isTouched; - /** Number of references to this block since it was brought in. */ unsigned refCount; @@ -217,7 +211,6 @@ class CacheBlk : public ReplaceableEntry task_id = ContextSwitchTaskId::Unknown; status = 0; whenReady = MaxTick; - isTouched = false; refCount = 0; srcMasterId = Request::invldMasterId; tickInserted = MaxTick; diff --git a/src/mem/cache/tags/base.cc b/src/mem/cache/tags/base.cc index 75d117e9c..0087de818 100644 --- a/src/mem/cache/tags/base.cc +++ b/src/mem/cache/tags/base.cc @@ -78,14 +78,6 @@ BaseTags::insertBlock(PacketPtr pkt, CacheBlk *blk) // Get address Addr addr = pkt->getAddr(); - // Update warmup data - if (!blk->isTouched) { - if (!warmedUp && tagsInUse.value() >= warmupBound) { - warmedUp = true; - warmupCycle = curTick(); - } - } - // If we're replacing a block that was previously valid update // stats for it. This can't be done in findBlock() because a // found block might not actually be replaced there if the @@ -100,7 +92,6 @@ BaseTags::insertBlock(PacketPtr pkt, CacheBlk *blk) // Previous block, if existed, has been removed, and now we have // to insert the new one - tagsInUse++; // Deal with what we are bringing in MasterID master_id = pkt->req->masterId(); @@ -111,6 +102,12 @@ BaseTags::insertBlock(PacketPtr pkt, CacheBlk *blk) blk->insert(extractTag(addr), pkt->isSecure(), master_id, pkt->req->taskId()); + tagsInUse++; + if (!warmedUp && tagsInUse.value() >= warmupBound) { + warmedUp = true; + warmupCycle = curTick(); + } + // We only need to write into one tag and one data block. tagAccesses += 1; dataAccesses += 1; |