Patent classifications
G06F12/0269
EFFICIENT REFERENCE CLASSIFICATION AND QUICK MEMORY REUSE IN A SYSTEM THAT SUPPORTS CONCURRENT GARBAGE COLLECTION
The disclosed embodiments facilitate reusing both the physical and virtual memory in a garbage-collected computing environment immediately after a relocated memory area has been emptied, without using special hardware or operating system extensions. This system uses load barrier to perform fast checks to determine if a reference might point into a relocated memory area. If so, the load barrier performs further actions to remap pointers that actually point into the relocated memory area, without the need to read that memory. Because the system neither follows pointers into relocated memory areas nor protects relocated memory areas, the system can immediately reuse the virtual memory areas. The load barrier ensures that references pointing into a relocated memory area will be caught and handled, and references pointing into the newly allocated memory will pass through the barrier without further actions.
METHOD AND DEVICE FOR CLEANING UP TERMINAL RESOURCE AND TERMINAL
A cleanup method and device for a terminal resource and a terminal. The method comprises: receiving a cleanup instruction, and acquiring a resource saved on a terminal according to the cleanup instruction (S101); processing the resource, and saving the processed resource, wherein a storage space occupied by the processed resource is less than a storage space occupied by the resource (S102); and querying whether a resource is saved on a server, if the resource is saved on the server, then displaying deletion prompt information, and deleting the resource according to an operation executed by a user (S103). By means of the cleanup method and device and the terminal, the storage space of the terminal occupied by a resource can be greatly reduced, and at the same time, convenience can be provided for a user to redisplay the resource since it is guaranteed that the corresponding resource is saved on a server before the resource is deleted.
COMPUTER SYSTEM FOR HYBRID OF EPOCH- AND POINTER-BASED MEMORY RECLAMATION, AND METHOD THEREOF
Various example embodiments provide a computer system for hybrid of epoch- and pointer-based memory reclamation, and a method thereof. Various example embodiments are configured to implement a pointer and epoch-based memory reclamation scheme by hybridizing a pointer-based memory reclamation scheme and an epoch-based memory reclamation scheme, and perform a memory reclamation of a concurrent data structure, based on the pointer and epoch-based memory reclamation scheme.
Garbage collection method for data storage device
A garbage collection method for a data storage device includes steps of: entering a background mode from a foreground mode; selecting a plurality of source data blocks from a plurality of in-use data blocks; dividing a mapping table into a plurality of sub-mapping tables and selecting one of the sub-mapping tables as a target sub-mapping table, wherein the target sub-mapping table is used to manage one of the source data blocks; selecting a destination data block from a plurality of spare data blocks; and sequentially updating a correspondence relationship of data stored in the target sub-mapping table from the source data blocks to the destination data block, wherein the updating comprises copying the data stored in the source data blocks to the destination data block.
GARBAGE COLLECTION OF PRELOADED TIME-BASED GRAPH DATA
The described technology is generally directed towards garbage collecting content selection graphs and related data from in an in-memory content selection graph data store. When a set of content selection graphs expire, a more current content selection graph set becomes active, and the storage space (e.g., in a Redis cache) used by the expired content selection graphs is reclaimed via garbage collection. Some graphs can be replaced before use, referred to as orphaned graphs, and the storage space for any such orphaned graphs is also reclaimed during garbage collection. Also garbage collected is storage space including related data structures used to generate and validate graphs.
Snapshot at the beginning marking in Z garbage collector
During execution of garbage collection marking, an application thread receives a first request to overwrite a reference field of an object, the object comprising at least a first reference and the first request comprising a second reference to be written to the reference field. Responsive to receiving the first request, the application thread determines a marking parity for objects being traversed by the garbage collection marking process and loads the first reference from the heap. The application thread determines that marking metadata of the first reference does not match the marking parity. Responsive to that determination, the application thread adds the first reference to a marking list, modifies the second reference to include the current marking parity as the marking metadata, and stores the modified second reference to the first reference field. In subsequent writes to the reference field, the application thread refrains from adding to the marking list.
TRACKING GARBAGE COLLECTION STATES OF REFERENCES
Garbage collection (GC) states are stored within references stored on a heap memory to track a progress of GC operations with respect to the references. GC state may be stored in a non-addressable portion of references. Based on the GC state of a particular reference, a set of GC operations are selected and performed for the reference. However, references stored on a call stack do not include any indication of GC state. Hence, loading a reference from heap to call stack involves removing the indication of GC state. Writing a reference to heap involves adding the indication of GC state. References embedded within a compiled method also do not indicate any GC state. Metadata of the compiled method indicate a GC state, which is implicated to the embedded references. GC operations are selected and performed for each embedded reference based on the GC state of the compiled method.
SELECTIVE INJECTION OF GC SAFEPOINTS FOR JNI INVOCATIONS
A computer-implemented method is provided for managing Garbage Collection (GC) safepoints. The method includes determining whether a GC safepoint for a target native method can be removed by checking a heap occupancy ratio prior to executing the target native method. The method further includes removing the GC safepoint responsive to the heap occupancy ratio prior to executing the target native method being less than a threshold occupancy amount percentage. The method also includes determining whether the GC safepoint for the target native method can be removed by checking a most recent GC pause time. The method additionally includes removing the GC safepoint responsive to the most recent GC pause time being shorter by a threshold pause time amount percentage than an execution time of the target native method.
Garbage collection of preloaded time-based graph data
The described technology is generally directed towards garbage collecting content selection graphs and related data from in an in-memory content selection graph data store. When a set of content selection graphs expire, a more current content selection graph set becomes active, and the storage space (e.g., in a Redis cache) used by the expired content selection graphs is reclaimed via garbage collection. Some graphs can be replaced before use, referred to as orphaned graphs, and the storage space for any such orphaned graphs is also reclaimed during garbage collection. Also garbage collected is storage space including related data structures used to generate and validate graphs.
SYSTEMS AND METHODS FOR SENDING A COMMAND TO A STORAGE DEVICE
A method includes storing, at a computing device, access granularity criteria associated with a memory area. The method further includes receiving a memory operation request requesting access to a first portion of the memory area at the first access granularity. The method further includes in response to the memory operation request satisfying the access granularity criteria, sending, from the computing device, a command to a storage device based on the memory operation request.