Systems and methods for tag-less buffer implementation
AssigneeSamsung Electronics Co., Ltd.
InventorsErik Ernst Hagersten, Andreas Karl Sembrant
Life of this patent
Estimating the term…
Abstract
A data management method for a computer system including at least one processor and at least a first cache, a second cache, a victim buffer (VB), and a memory allocated to the at least one processor, includes selecting a victim cache line to be evicted from the first cache; finding a VB location corresponding to the victim cache line from a set of the VB; copying data of the victim cache line to a data field of the VB location; copying a backward pointer (BP) associated with the victim cache line to a BP field of the VB location; and reclaiming victim space of the first cache using the VB.
Claims20
A data management method for a computer system including at least one processor and at least a first cache, a second cache, a victim buffer (VB), and a memory allocated to the at least one processor, the method comprising:
- selecting, as a victim cache line to be evicted from the first cache, a cache line stored in the first cache;
- finding a VB location corresponding to the victim cache line from a first set of the VB, the VB location being a location in the VB, the VB being a set-associative buffer including a plurality of sets, the plurality of sets including the first set;
- copying data of the victim cache line to a data field of the VB location;
- copying a backward pointer (BP) associated with the victim cache line to a BP field of the VB location;
- reclaiming victim space of the first cache by storing data of a new cache line in the victim space, the victim space being a location in the first cache where the data of the victim cache line is stored prior to the victim cache line being evicted from the first cache;
- and
- performing a write-back operation by writing, to at least one of the second cache or the memory, the data of the victim cache line that was copied to the data field of the VB location.
A multi-processor system comprising:
- a memory;
- a plurality of nodes, each of the plurality of nodes including at least one processor, a plurality of caches, and a plurality of cache location buffers (CLBs);
- and
- one or more victim buffers (VBs),
- wherein,
- a processor of an N-th node among the plurality of nodes is configured to
- find a VB location from a first VB, from among the one or more VBs, the VB location being a location in the first VB that corresponds to a victim cache line that is to be evicted from a first cache of the plurality of caches of the N-th Node,
- copy data of the victim cache line and a backward pointer (BP) associated with the victim cache line to fields of the VB location, and
- reclaim victim space of the first cache by storing data of a new cache line in the victim space, the victim space being a location in the first cache where the data of the victim cache line is stored prior to the victim cache line being evicted from the first cache, and
- perform a write-back operation by writing, to at least one of the memory or a second cache from among the plurality of caches of the N-th node, the data of the victim cache line that was copied to a data field of the VB location.
A non-transitory, computer-readable storage medium comprising computer-executable instructions that, when executed by at least one processor, cause the at least one processor to perform operations of a computer system including at least one processor and at least a first cache, a second cache, a victim buffer (VB), and a memory allocated to the at least one processor, the operations including,
- selecting, as a victim cache line to be evicted from the first cache, a cache line stored in the first cache,
- finding a VB location corresponding to the victim cache line from a first set of the VB, the VB location being a location in the VB, the VB being a set-associative buffer including a plurality of sets, the plurality of sets including the first set,
- copying data of the victim cache line to a data field of the VB location,
- copying a backward pointer (BP) associated with the victim cache line to a BP field of the VB location,
- reclaiming victim space of the first cache by storing data of a new cache line in the victim space, the victim space being a location in the first cache where the data of the victim cache line is stored prior to the victim cache line being evicted from the first cache, and
- performing a write-back operation by writing, to at least one of the second cache or the memory, the data of the victim cache line that was copied to the data field of the VB location.
Dependencies are inferred from the claim text.