G06F2212/6042

Methods and apparatus to facilitate read-modify-write support in a coherent victim cache with parallel data paths

Methods, apparatus, systems and articles of manufacture are disclosed facilitate read-modify-write support in a coherent victim cache with parallel data paths. An example apparatus includes a random-access memory configured to be coupled to a central processing unit via a first interface and a second interface, the random-access memory configured to obtain a read request indicating a first address to read via a snoop interface, an address encoder coupled to the random-access memory, the address encoder to, when the random-access memory indicates a hit of the read request, generate a second address corresponding to a victim cache based on the first address, and a multiplexer coupled to the victim cache to transmit a response including data obtained from the second address of the victim cache.

DATA CONTROL DEVICE, STORAGE SYSTEM, AND DATA CONTROL METHOD
20230146399 · 2023-05-11 ·

In a management node that manages a distributed file and object storage that accessibly manages a file used by an application, the distributed file and object storage is accessible to a file managed by a storage of another site, and a management node includes a processor, and the processor is configured to specify an access circumstance relating to a file by an application, and control caching by the distributed file and object storage of the own site with respect to the file managed by the storage of the other site used by the application, before the application is executed, based on the access circumstance.

Systems and Methods for Optimizing Media Read Times
20170371559 · 2017-12-28 ·

The various embodiments described herein include methods, systems, and devices for optimizing media read times. In one aspect, a method is performed at a device at a storage device with one or more processors and memory coupled to the one or more processors. The method includes: (i) predicting a read frequency for particular data; (ii) based on the predicted read frequency, determining one or more preferred storage locations within the memory; and (iii) storing the particular data in a preferred storage location of the one or more preferred storage locations.

TARGETED PER-LINE OPERATIONS FOR REMOTE SCOPE PROMOTION
20170371784 · 2017-12-28 ·

A processing system includes one or more first caches and one or more first lock tables associated with the one or more first caches. The processing system also includes one or more processing units that each include a plurality of compute units for concurrently executing work-groups of work items, a plurality of second caches associated with the plurality of compute units and configured in a hierarchy with the one or more first caches, and a plurality of second lock tables associated with the plurality of second caches. The first and second lock tables indicate locking states of addresses of cache lines in the corresponding first and second caches on a per-line basis.

SHADOW TAG MEMORY TO MONITOR STATE OF CACHELINES AT DIFFERENT CACHE LEVEL
20170371786 · 2017-12-28 ·

A processing system includes a plurality of processor cores and a plurality of private caches. Each private cache is associated with a corresponding processor core of the plurality of processor cores and includes a corresponding first set of cachelines. The processing system further includes a shared cache shared by the plurality of processor cores. The shared cache includes a second set of cachelines, and a shadow tag memory including a plurality of entries, each entry storing state information for a corresponding cacheline of the first set of cachelines of one of the private caches.

SYSTEM, METHOD, AND RECORDING MEDIUM FOR COMMON MEMORY PROGRAMMING
20170371798 · 2017-12-28 ·

A parallel execution method, system, and non-transitory computer readable medium not maintaining a cache coherence, include creating a continuum, the continuum being a construct that holds data structures, giving a view to the continuum, the view being a descriptor that provides access rights and properties for the continuum, and performing a task associated with an execution sequence, the task holding the view to the continuum that the execution sequence is accessing.

SETTING CACHE ENTRY AGE BASED ON HINTS FROM ANOTHER CACHE LEVEL

A processor replaces data at a first cache based on hints from a second cache, wherein the hints indicate information about the data that is not available to the first cache directly. When data at an entry is transferred from the first cache to the second cache, the first cache can provide an age hint to the second cache to indicate that the data should be assigned a higher or lower initial age relative to a nominal initial age. The second cache assigns the entry for the data an initial age based on the age hint and, when replacing data, selects data for replacement based on the age of each entry.

STOCHASTIC OPTIMIZATION OF SURFACE CACHEABILITY IN PARALLEL PROCESSING UNITS

A processing system selectively allocates storage at a local cache of a parallel processing unit for cache lines of a repeating pattern of data that exceeds the storage capacity of the cache. The processing system identifies repeating patterns of data having cache lines that have a reuse distance that exceeds the storage capacity of the cache. A cache controller allocates storage for only a subset of cache lines of the repeating pattern of data at the cache and excludes the remainder of cache lines of the repeating pattern of data from the cache. By restricting the cache to store only a subset of cache lines of the repeating pattern of data, the cache controller increases the hit rate at the cache for the subset of cache lines.

Guided Cache Replacement

Guided cache replacement is described. In accordance with the described techniques, a request to access a cache is received, and a cache replacement policy which controls loading data into the cache is accessed. The cache replacement policy includes a tree structure having nodes corresponding to cachelines of the cache and a traversal algorithm controlling traversal of the tree structure to select one of the cachelines. Traversal of the tree structure is guided using the traversal algorithm to select a cacheline to allocate to the request. The guided traversal modifies at least one decision of the traversal algorithm to avoid selection of a non-replaceable cacheline.

Receive buffer management

Examples described herein can be used to allocate replacement receive buffers for use by a network interface, switch, or accelerator. Multiple refill queues can be used to receive identifications of available receive buffers. A refill processor can select one or more identifications from a refill queue and allocate the identifications to a buffer queue. None of the refill queues is locked from receiving identifications of available receive buffers but merely one of the refill buffers is accessed at a time to provide identifications of available receive buffers. Identifications of available receive buffers from the buffer queue are provide to the network interface, switch, or accelerator to store content of received packets.