Patent classifications
G06F2212/6046
APPARATUS, MEMORY CONTROLLER, MEMORY MODULE AND METHOD FOR CONTROLLING DATA TRANSFER
An apparatus, memory controller, memory module and method are provided for controlling data transfer in memory. The apparatus comprises a memory controller and a plurality of memory modules. The memory controller is arranged to orchestrate direct data transfer by transmitting a first direct transfer command to a first memory module and a second direct transfer command to a second memory module. The first memory module is responsive to receipt of the first direct transfer command to directly transmit the data for receipt by the second memory module in a way that bypasses the memory controller. The second memory module is responsive to the second direct transfer command to receive the data from the first memory module directly, rather than requiring the data to have been routed via the memory controller, and then stores that data in dependence on the second direct transfer command. This provides an efficient mechanism for transferring data between multiple memory modules coupled to the same memory controller.
DYNAMIC CACHE ALLOCATION
One embodiment provides a system. The system includes a processor, a cache memory, a performance monitoring unit (PMU), at least one virtual machine (VM), and cache sensitivity index (CSI) logic. The processor includes at least one core. The at least one virtual machine (VM) is to execute on at least one of the at least one core. The cache sensitivity index (CSI) logic is to allocate a cache portion to a selected VM, the allocated cache portion related to a determined cache portion, determined based, at least in part, on a CSI related to the selected VM.
Storage control device, storage device, information processing system, and storage control method therefor
Data are stored using a writing method according to the property of the data in a storage device. An area defining unit defines, in a second memory, a system area for storing system information causing a system to operate and a cache area temporarily storing data of a first memory. A moving processing unit moves data stored in the cache area to the first memory at a predetermined point in time. An access control unit accesses the second memory in accordance with the definition with regard to access corresponding to the system area or the cache area, and read data from the first memory with regard to read-access corresponding to those other than the system area and the cache area.
MANAGING MEMORY ALLOCATION BETWEEN INPUT/OUTPUT ADAPTER CACHES
A first cache of a first IOA is detected storing an amount of data that satisfies a memory shortage threshold. A request for extra memory for the first IOA is transmitted. The request is sent in response to detecting that the first cache stores the amount of data that satisfies the memory shortage threshold. The request is transmitted to a plurality of IOAs of a computer system. A second cache of a second IOA is detected storing an amount of data that satisfies a memory dissemination threshold. Memory of the second cache is allocated to the first cache. The memory is allocated in response to the request and the amount of data in the second cache satisfying the memory dissemination threshold.
SYSTEM CACHE OPTIMIZATIONS FOR DEEP LEARNING COMPUTE ENGINES
In an example, an apparatus comprises a plurality of compute engines; and logic, at least partially including hardware logic, to detect a cache line conflict in a last-level cache (LLC) communicatively coupled to the plurality of compute engines; and implement context-based eviction policy to determine a cache way in the cache to evict in order to resolve the cache line conflict. Other embodiments are also disclosed and claimed.
Method and system for efficient communication and command system for deferred operation
A method and system for efficiently executing a delegate of a program by a processor coupled to an external memory. A payload including state data or command data is bound with a program delegate. The payload is mapped with the delegate via the payload identifier. The payload is pushed to a repository buffer in the external memory. The payload is flushed by reading the payload identifier and loading the payload from the repository buffer. The delegate is executed using the loaded payload.
Cache bypass utilizing a binary tree
A storage command is received at a block level interface from a file system. The storage command is associated with a window of a virtual drive. One of a plurality of binary trees is selected based on the window being associated with the storage command, each of the binary trees being associated with a plurality of windows. If a data storage size of the storage command exceeds a threshold, a window identifier of the window is added to the selected binary tree to indicate the command will bypass a cache and send data of the storage command directly to main data storage.
CACHE BYPASS UTILIZING A BINARY TREE
A storage command is received at a block level interface from a file system. The storage command is associated with a window of a virtual drive. One of a plurality of binary trees is selected based on the window being associated with the storage command, each of the binary trees being associated with a plurality of windows. If a data storage size of the storage command exceeds a threshold, a window identifier of the window is added to the selected binary tree to indicate the command will bypass a cache and send data of the storage command directly to main data storage.
RE-MRU of metadata tracks to reduce lock contention
For reducing lock contention on a Modified Least Recently Used (MLRU) list for metadata tracks, upon a conclusion of an access of a metadata track, if one of the metadata track is located in a predefined lower percentile of the MLRU list, and the metadata track has been accessed, including the access, a predetermined number of times, the metadata track is removed from a current position in the MLRU list and moved to a Most Recently Used (MRU) end of the MLRU list.
MULTI-CORE COMMUNICATION ACCELERATION USING HARDWARE QUEUE DEVICE
- Ren Wang ,
- Yipeng Wang ,
- Andrew J. Herdrich ,
- Jr-Shian Tsai ,
- Tsung-Yuan C. Tai ,
- Niall D. McDonnell ,
- Hugh Wilkinson ,
- Bradley A. Burres ,
- Bruce Richardson ,
- Namakkal N. Venkatesan ,
- Debra Bernstein ,
- Edwin Verplanke ,
- Stephen R. Van Doren ,
- An Yan ,
- Andrew Cunningham ,
- David Sonnier ,
- Gage Eads ,
- James T. Clee ,
- Jamison D. Whitesell ,
- Jerry Pirog ,
- Jonathan Kenny ,
- Joseph R. Hasting ,
- Narender Vangati ,
- Stephen Miller ,
- Te K. Ma ,
- William Burroughs
Apparatus and methods implementing a hardware queue management device for reducing inter-core data transfer overhead by offloading request management and data coherency tasks from the CPU cores. The apparatus include multi-core processors, a shared L3 or last-level cache (LLC), and a hardware queue management device to receive, store, and process inter-core data transfer requests. The hardware queue management device further comprises a resource management system to control the rate in which the cores may submit requests to reduce core stalls and dropped requests. Additionally, software instructions are introduced to optimize communication between the cores and the queue management device.