G06F2212/163

UNIVERSAL POINTERS FOR DATA EXCHANGE IN A COMPUTER SYSTEM HAVING INDEPENDENT PROCESSORS
20230146488 · 2023-05-11 ·

A system, method and apparatus to facilitate data exchange via pointers. For example, in a computing system having a first processor and a second processor that is separate and independent from the first processor, the first processor can run a program configured to use a pointer identifying a virtual memory address having an ID of an object and an offset within the object. The first processor can use the virtual memory address to store data at a memory location in the computing system and/or identify a routine at the memory location for execution by the second processor. After the pointer is communicated from the first processor to the second processor, the second processor can access the same memory location identified by the virtual memory address. The second processor may operate on the data stored at the memory location or load the routine from the memory location for execution.

PROVIDING ROLLING UPDATES OF DISTRIBUTED SYSTEMS WITH A SHARED CACHE
20230205697 · 2023-06-29 · ·

Disclosed herein are system, apparatus, article of manufacture, method, and/or computer program product embodiments for providing rolling updates of distributed systems with a shared cache. An embodiment operates by receiving a data item key corresponding to a request from a user profile operating on a media player and receiving a version identifier corresponding to a first version of an application operating on the media player. It is determined that a shared cache includes a first value and second value for the data item key. A key component is generated corresponding to the user profile. Both the generated key component and the data item key are provided to the shared cache, and the first value of the data item as stored in the shared cache is received. The first value of the first version of the data item is updated.

TECHNIQUES FOR DYNAMIC CACHE USE BY AN INPUT/OUTPUT DEVICE
20170374150 · 2017-12-28 · ·

A system and method for dynamic caching by a client device having remote memory access to a server. The system includes: a processing circuitry; and at least one memory, the at least one memory containing instructions that, when executed by the processing circuitry, configure the system to: configure a network interface of the client device to: request a memory allocation of at least a portion of a storage of the client device; receive, in real-time, the requested memory allocation of the client device storage; and store, in the allocated at least a portion of the client device storage, at least a first portion of cached metadata, wherein the cached metadata corresponds to at least an access operation between the client device and the server.

Data allocation control apparatus and data allocation control method
09851925 · 2017-12-26 · ·

When access to a second data block located in a second storage area occurs immediately after access to a first data block located in a first storage area, a data allocation control apparatus updates access information indicating an access sequence of the data blocks, based on identification information of the first data block and identification information of the second data block. The data allocation control apparatus determines whether to perform relocation of a first data group related to the first data block and a second data group related to the second data block, based on the access information and allocation information indicating an allocation status of the data blocks in the first storage area and the second storage area.

Single input graphical user interface control element and method

Described are methods, systems and computer readable media for GUI control elements and associated processing methods.

Technologies for managing connected data on persistent memory-based systems

Managing connected data, such as a graph data store, includes a computing device with persistent memory and volatile memory. The computing device stores a graph data store with a plurality of nodes and edges in persistent memory. Each of the edges defines the relationship between at least two of the nodes. The nodes and edges may contain tags and properties containing additional information. In response to a search request query, the computing device generates an iterator object stored in volatile memory with a reference to one or more nodes and/or edges in the graph data store. The split between volatile and persistent memory allocation could be used for other objects, such as allocators and transactions. Other embodiments are described and claimed.

Electronic apparatus and management method thereof
09842064 · 2017-12-12 · ·

An electronic apparatus operating with a memory includes an operating module, a management module, a database and a filtering module. When the operating module needs to use the memory for performing a task, the operating module issues a memory request. The management module determines whether the memory request is to be permitted. When the memory request is permitted, the management module generates a requested data chunk according to the memory request. The filtering module receives the requested data chunk from the management module, and determines whether to store the requested data chunk into the data base according to a predetermined filtering condition.

Remote data object publishing/subscribing system having a multicast key-value protocol

Described are methods, systems and computer readable media for data object publishing/subscribing via a multicast key-value protocol.

Write-behind optimization of covering cache

Data base performance is improved using write-behind optimization of covering cache. Non-volatile memory data cache includes a full copy of stored data file(s). Data cache and storage writes, checkpoints, and recovery may be decoupled (e.g., with separate writes, checkpoints and recoveries). A covering data cache supports improved performance by supporting database operation during storage delays or outages and/or by supporting reduced I/O operations using aggregate writes of contiguous data pages (e.g., clean and dirty pages) to stored data file(s). Aggregate writes reduce data file fragmentation and reduce the cost of snapshots. Performing write-behind operations in a background process with optimistic concurrency control may support improved database performance, for example, by not interfering with write operations to data cache. Data cache may store (e.g., in metadata) data cache checkpoint information and storage checkpoint information. A stored data file may store storage checkpoint information (e.g., in a file header).

Synchronizing garbage collection and incoming data traffic

The technology describes performing garbage collection while data writes are occurring, which can lead to a conflict in that a new reference to an otherwise non-referenced candidate object for garbage collection is written after the non-referenced candidate object is detected. In one example implementation, orphaned binary large objects (BLOBs) that are not referenced by a descriptor file and are beyond a certain age are detected and deleted via an object references table traversal as part of garbage collection. Before reclaiming a deleted BLOB's capacity, a background process operates to restore the deleted BLOB if a new descriptor file reference to the BLOB was written during the object references table traversal. Capacity is only reclaimed after the object references table traversal and the background processing completes, for those BLOBs that were deleted and had not been restored.