Patent classifications
G06F2212/222
ARCHITECTURE UTILIZING A MIDDLE MAP BETWEEN LOGICAL TO PHYSICAL ADDRESS MAPPING TO SUPPORT METADATA UPDATES FOR DYNAMIC BLOCK RELOCATION
A method for block addressing is provided. The method includes moving content of a data block referenced by a logical block address (LBA) from a first physical block corresponding to a first physical block address (PBA) to a second physical block corresponding to a second PBA, wherein prior to the moving a logical map maps the LBA to a middle block address (MBA) and a middle map maps the MBA to the first PBA and in response to the moving, updating the middle map to map the MBA to the second PBA instead of the first PBA.
Data rebuild when changing erase block sizes during drive replacement
A method for rebuilding data when changing erase block sizes in a storage system is provided. The method includes determining one or more erase blocks to be rebuilt and allocating one or more replacement erase blocks, wherein the one or more erase blocks and the one or more replacement erase blocks have differing erase block sizes. The method includes mapping logical addresses, for the one or more erase blocks, to the one or more replacement erase blocks and rebuilding the one or more erase blocks into the one or more replacement erase blocks, in accordance with the mapping.
SMOOTH FLUSHING OF CACHED WRITE DATA
A method of performing write operations that have been received by a data storage apparatus is provided. The method includes (a) storing page descriptors for received write operations within temporary storage, each page descriptor indicating respective data to be written; (b) upon storing each page descriptor, organizing that page descriptor into a shared working-set structure; and (c) operating a plurality of flushers to persist the data indicated by respective page descriptors to long-term persistent storage based on organization of the page descriptors in the shared working-set structure, each flusher accessing page descriptors via the shared working-set structure. An apparatus, system, and computer program product for performing a similar method are also provided.
Network interface controller with non-volatile random access memory write packet log
Embodiments of the present disclosure provide devices, techniques, and configurations for network interface controllers (NICs) that log write packets received from a network in non-volatile random access memory (NVRAM). In one embodiment, a NIC includes a network interface to couple a host of the NIC to a network, a NVRAM, and a controller coupled with the network interface and the NVRAM, where the controller is to log write packets received at the network interface from the network in the NVRAM. Other embodiments may be described and/or claimed.
Memory protection with hidden inline metadata
Embodiments are directed to memory protection with hidden inline metadata. An embodiment of an apparatus includes processor cores; a computer memory for the storage of data; and cache memory communicatively coupled with one or more of the processor cores, wherein one or more processor cores of the plurality of processor cores are to implant hidden inline metadata in one or more cachelines for the cache memory, the hidden inline metadata being hidden at a linear address level.
Tree style memory zone traversal
Aspects of the invention include systems and methods for tree style memory zone traversal. A non-limiting example computer-implemented method includes receiving, by a processor, a request from a requestor for available memory space in a main memory. The processor searches a plurality of memory zones in the main memory for the requested available memory space, wherein the memory zones are arranged in a ring structure and a separate tree structure, and the searching is based at least in part on both of the ring structure and the tree structure. In response to the processor finding the requested available memory space, processor allocates the found available memory space to the requestor.
MANAGING DATA STORED IN A CACHE USING A REINFORCEMENT LEARNING AGENT
Managing data stored in a cache using a reinforcement learning agent may include: determining a set of current state observations with respect to a cache, wherein the set of current state observations is determined based on historical cache accesses to the cache; inputting the set of current state observations into an actor network of a reinforcement learning (RL) agent to obtain an action output by the actor network, wherein the RL agent is configured to manage data stored at the cache; inputting the set of current state observations and the action into a critic network of the RL agent to obtain a score corresponding to the action from the critic network; causing the RL agent to perform the action with respect to managing the data stored at the cache; using the score to update the actor network; and using a reward corresponding to the action to update the critic network.
Hybrid storage device with three-level memory mapping
A hybrid storage device with three-level memory mapping is provided. An illustrative device comprises a primary storage device comprising a plurality of primary sub-blocks; a cache memory device comprising a plurality of cache sub-blocks implemented as a cache for the primary storage device; and a controller configured to map at least one portion of one or more primary sub-blocks of the primary storage device stored in the cache to a physical location in the cache memory device using at least one table identifying portions of the primary storage device that are cached in one or more of the cache sub-blocks of the cache memory device, wherein a size of the at least one table is independent of a capacity of the primary storage device.
Method, electronic device and computer program product for managing storage system
Techniques for managing a storage system involve flushing a target page in a cache device to a persistent storage device of the storage system. The techniques further involve releasing a resource storing a page descriptor of the target page to a resource pool. The resource pool is configured to provide resources to store page descriptors of pages to be flushed in the cache device. The techniques further involve: if it is determined that an auxiliary descriptor of the target page is located at a tail of a queue of auxiliary descriptors of the pages to be flushed, removing the auxiliary descriptor of the target page from the queue. The auxiliary descriptors of the pages to be flushed are configured to describe the page descriptors of the pages to be flushed. Accordingly, the page flushing performance of the storage system can be improved, thereby improving the input/output performance.
Removable media based object store
Embodiments disclosed herein provide systems, methods, and computer-readable media to implement an object store with removable storage media. In a particular embodiment, a method provides identifying first data for storage on a first removable storage medium and designating at least a portion of the first data to a first data object. The method further provides determining a first location where to store the first data object in a first value store partition of the first removable storage medium and writing the first data object to the first location. Also, the method provides writing a first key that identifies the first data object and indicates the first location to a first key store partition of the first removable storage medium.