Patent classifications
G06F3/0646
Method and apparatus for storing information using an intelligent block storage controller
Methods, devices, and media for improving data storage reliability and efficiency comprising: creating at least one logical storage drive comprising a plurality of logical blocks; mapping the at least one logical storage drive to at least one physical storage drive based on many-to-one mapping or one-to-many mapping, wherein the at least one physical storage drive comprises a plurality of physical blocks; and applying a compression algorithm to data held in one or more logical blocks, aggregating units of the data, and storing the units of the data into one or more physical blocks.
Method and apparatus for storing information using an intelligent block storage controller
Methods, devices, and media for improving data storage reliability and efficiency comprising: creating at least one logical storage drive comprising a plurality of logical blocks; mapping the at least one logical storage drive to at least one physical storage drive based on many-to-one mapping or one-to-many mapping, wherein the at least one physical storage drive comprises a plurality of physical blocks; and applying a compression algorithm to data held in one or more logical blocks, aggregating units of the data, and storing the units of the data into one or more physical blocks.
SYSTEMS AND METHODS FOR TAKING SNAPSHOTS IN A DEDUPLICATED VIRTUAL FILE SYSTEM
A computer-implemented method for taking snapshots in a deduplicated virtual file system may include (1) maintaining a deduplicated virtual file system that stores, at an original location within a non-virtual file system, at least one configuration file storing metadata for a target file and an extent map for the target file, the extent map defining how to construct the target file from deduplicated data segments in a deduplicated storage system, (2) receiving a request to take a snapshot of the target file corresponding to the configuration file, (3) copying the configuration file storing metadata for the target file and the extent map for the target file into a snapshot location within the non-virtual file system, and (4) transmitting a file reference request to the deduplicated storage system to add a file reference within the deduplicated storage system. Various other methods, systems, and computer-readable media are also disclosed.
Efficient decompression locality system for demand paging
Aspects include computing devices, systems, and methods for implementing executing decompression of a compressed page. A computing device may determine a decompression block belonging to a compressed page that contains a code instruction requested in a memory access request. Decompression blocks, other than the decompression block containing the requested code instruction, may be selected for decompression based on their locality with respect to the decompression block containing the requested code instruction. Decompression blocks not identified for decompression may be substituted for a fault or exception code. The computing device may decompress decompression blocks identified for decompression, terminating the decompression of the compressed page upon filling all blocks with decompressed blocks, faults, or exception code. The remaining decompression blocks belonging to the compressed page may be decompressed after or concurrently with the execution of the requested code instruction.
Block Storage Using a Hybrid Memory Device
Techniques for block storage using a hybrid memory device are described. In at least some embodiments, a hybrid memory device includes a volatile memory portion, such as dynamic random access memory (DRAM). The hybrid memory device further includes non-volatile memory portion, such as flash memory. In at least some embodiments, the hybrid memory device can be embodied as a non-volatile dual in-line memory module, or NVDIMM. Techniques discussed herein employ various functionalities to enable the hybrid memory device to be exposed to various entities as an available block storage device.
Accelerator system for remote data storage
Data processing and an accelerator system therefor are described. An embodiment relates generally to a data processing system. In such an embodiment, a bus and an accelerator are coupled to one another. The accelerator has an application function block. The application function block is to process data to provide processed data to storage. A network interface is coupled to obtain the processed data from the storage for transmission.
System and method for copying directory structures
A method, storage control system and information handling system (IHS) enables efficient copying of a first directory containing a first plurality of files from a client to a target server. The method includes receiving, via a first processor of the client, a request to copy the first directory containing the first plurality of files from a first storage device to the target server. The first directory is parsed into a first i-node tree. Metadata corresponding to the first i-node tree is generated and transmit from the client to the target server. A second processor at the target server is triggered to generate a second directory based on the metadata corresponding to the first i-node tree. The first plurality of files contained in the first directory from the first storage device is transmitted to the target server.
Tape emulation alternate data path
Emulating tape data includes providing a first storage device coupled to a host, providing a tape emulation unit coupled to the host, the tape emulation unit including a data mover, and, in response to a command to transfer data between the first storage device and the tape emulation unit, transferring data directly between the first storage device and the data mover using a link therebetween, where data that is transferred bypasses the host. The tape emulation unit may include a front end component coupled to the host and a second storage device, the data mover being interposed between the second storage device and the front end component. The front end component may be coupled to the data mover using a GigE switch. The data mover may use NFS to access data. At least one of the first and second data storage devices may be data storage arrays.
APPARATUS AND METHOD FOR ACCELERATING OPERATIONS IN A PROCESSOR WHICH USES SHARED VIRTUAL MEMORY
An apparatus and method are described for coupling a front end core to an accelerator component (e.g., such as a graphics accelerator). For example, an apparatus is described comprising: an accelerator comprising one or more execution units (EUs) to execute a specified set of instructions; and a front end core comprising a translation lookaside buffer (TLB) communicatively coupled to the accelerator and providing memory access services to the accelerator, the memory access services including performing TLB lookup operations to map virtual to physical addresses on behalf of the accelerator and in response to the accelerator requiring access to a system memory.
APPARATUS AND METHOD FOR ACCELERATING OPERATIONS IN A PROCESSOR WHICH USES SHARED VIRTUAL MEMORY
An apparatus and method are described for coupling a front end core to an accelerator component (e.g., such as a graphics accelerator). For example, an apparatus is described comprising: an accelerator comprising one or more execution units (EUs) to execute a specified set of instructions; and a front end core comprising a translation lookaside buffer (TLB) communicatively coupled to the accelerator and providing memory access services to the accelerator, the memory access services including performing TLB lookup operations to map virtual to physical addresses on behalf of the accelerator and in response to the accelerator requiring access to a system memory.