gem5 v24.0.0.0
Loading...
Searching...
No Matches
fifo_rp.hh
Go to the documentation of this file.
1
36#ifndef __MEM_CACHE_REPLACEMENT_POLICIES_FIFO_RP_HH__
37#define __MEM_CACHE_REPLACEMENT_POLICIES_FIFO_RP_HH__
38
39#include "base/types.hh"
41
42namespace gem5
43{
44
45struct FIFORPParams;
46
47namespace replacement_policy
48{
49
50class FIFO : public Base
51{
52 protected:
63
64 private:
69 mutable Tick timeTicks;
70
71 public:
72 typedef FIFORPParams Params;
73 FIFO(const Params &p);
74 ~FIFO() = default;
75
82 void invalidate(const std::shared_ptr<ReplacementData>& replacement_data)
83 override;
84
91 void touch(const std::shared_ptr<ReplacementData>& replacement_data) const
92 override;
93
100 void reset(const std::shared_ptr<ReplacementData>& replacement_data) const
101 override;
102
109 ReplaceableEntry* getVictim(const ReplacementCandidates& candidates) const
110 override;
111
117 std::shared_ptr<ReplacementData> instantiateEntry() override;
118};
119
120} // namespace replacement_policy
121} // namespace gem5
122
123#endif // __MEM_CACHE_REPLACEMENT_POLICIES_FIFO_RP_HH__
Defines global host-dependent types: Counter, Tick, and (indirectly) {int,uint}{8,...
A replaceable entry is a basic entry in a 2d table-like structure that needs to have replacement func...
A common base class of cache replacement policy objects.
Definition base.hh:55
std::shared_ptr< ReplacementData > instantiateEntry() override
Instantiate a replacement data entry.
Definition fifo_rp.cc:92
ReplaceableEntry * getVictim(const ReplacementCandidates &candidates) const override
Find replacement victim using insertion timestamps.
Definition fifo_rp.cc:71
Tick timeTicks
A counter that tracks the number of ticks since being created to avoid a tie.
Definition fifo_rp.hh:69
void invalidate(const std::shared_ptr< ReplacementData > &replacement_data) override
Invalidate replacement data to set it as the next probable victim.
Definition fifo_rp.cc:49
void touch(const std::shared_ptr< ReplacementData > &replacement_data) const override
Touch an entry to update its replacement data.
Definition fifo_rp.cc:57
STL vector class.
Definition stl.hh:37
Bitfield< 0 > p
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
Definition binary32.hh:36
uint64_t Tick
Tick count type.
Definition types.hh:58
FIFO-specific implementation of replacement data.
Definition fifo_rp.hh:55
Tick tickInserted
Tick on which the entry was inserted.
Definition fifo_rp.hh:57
The replacement data needed by replacement policies.

Generated on Tue Jun 18 2024 16:24:05 for gem5 by doxygen 1.11.0