Patentable/Patents/US-11237958
US-11237958

Low overhead cardinality estimation for incoming references in regional garbage collection

PublishedFebruary 1, 2022
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

A garbage collection process, wherein a system, concurrently with execution of a mutator application that modifies a heap memory computes, for each of a plurality of regions in the heap memory, an estimate indicative of a time required to evacuate the respective region. Thereafter, during a garbage collection pause having a particular pause duration, the system selects a candidate subset of memory regions for evacuation. The system merges the estimates indicative of the time required to evacuate each region of the candidate subset and determines a remaining time during the pause. The system may determine that the total estimated evacuation time to evacuate the candidate subset of regions does not exceed the determined first remaining time, and may evacuate each region in the candidate subset of memory regions for evacuation.

Patent Claims
20 claims

Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.

Claim 1

Original Legal Text

1. One or more non-transitory computer readable media comprising instructions which, when executed by one or more hardware processors, causes performance of operations comprising: concurrently with execution of a mutator application that modifies a heap memory comprising a plurality of memory regions and prior to initiating a garbage collection pause to perform a garbage collection operation: for each of the plurality of regions in the heap memory, computing an estimate indicative of a time required to evacuate the respective region by applying a probabilistic cardinality estimator algorithm to the region to estimate a number of unique objects present within a set that includes the region; during the garbage collection pause having a particular pause duration: selecting, from the plurality of memory regions in the heap memory, a candidate subset of memory regions for evacuation, the candidate subset being selected based at least in part on the particular pause duration and the estimates computed prior to the garbage collection pause; merging the estimates that (a) correspond to the selected candidate subset of memory regions and (b) are computed prior to the garbage collection pause to determine a total estimated evacuation time to evacuate the candidate subset of memory regions; determining a first remaining time during the pause; determining that the total estimated time to evacuate the candidate subset of regions does not exceed the determined first remaining time; and evacuating each region in the candidate subset of memory regions for evacuation.

Plain English Translation

This invention relates to memory management in computing systems, specifically optimizing garbage collection (GC) operations to minimize pause times in applications that modify heap memory. The problem addressed is the inefficiency of traditional garbage collection methods, which often cause unpredictable or excessively long pauses, degrading application performance. The solution involves a preemptive approach where, during normal application execution (mutator phase), the system analyzes heap memory regions to estimate evacuation times. A probabilistic cardinality estimator algorithm is applied to each memory region to estimate the number of unique objects, which is then used to compute an evacuation time estimate. During a garbage collection pause, the system selects a subset of memory regions for evacuation based on the pause duration and precomputed estimates. The estimates for the selected regions are merged to determine a total evacuation time, which is compared against the remaining pause time. If the estimated time fits within the pause duration, the selected regions are evacuated. This method ensures efficient use of available pause time by dynamically adjusting the scope of garbage collection based on real-time estimates, reducing pause durations and improving application responsiveness.

Claim 2

Original Legal Text

2. The medium of claim 1 , wherein selecting the candidate subset of regions for evacuation comprises: determining a remaining time during the pause; selecting the candidate subset of regions for evacuation such that a total of intermediate estimates for each region in the subset is less than the determined remaining time.

Plain English Translation

This invention relates to a system for optimizing data evacuation during pauses in a storage system, particularly in scenarios where data must be moved or processed within a limited time window. The problem addressed is efficiently selecting which regions of data to prioritize for evacuation when only a short pause period is available, ensuring that the evacuation process completes within the available time while minimizing disruptions to ongoing operations. The system determines the remaining time during the pause and selects a subset of regions for evacuation such that the total time required to generate intermediate estimates for each region in the subset is less than the determined remaining time. Intermediate estimates refer to preliminary calculations or assessments needed before fully evacuating a region, such as determining data integrity, transfer feasibility, or resource allocation. By dynamically adjusting the subset of regions based on the available time, the system ensures that the evacuation process is both time-efficient and resource-effective, avoiding unnecessary delays or failures due to insufficient time. The invention improves upon prior art by dynamically adapting the selection of regions to the available pause duration, rather than relying on fixed or pre-determined subsets. This approach enhances system reliability and performance in environments where pause times may vary unpredictably.

Claim 3

Original Legal Text

3. The medium of claim 1 , the operations further comprising: after evacuating each region in the candidate subset of memory regions for evacuation: determining a second remaining time during the pause; selecting a second candidate subset of regions for evacuation, the second candidate subset of memory regions for evacuation being selected based at least in part on the determined second remaining time and computed intermediate estimates for the second candidate subset of regions for evacuation; merging the estimates that (a) correspond to the second candidate subset of memory regions and (b) are computed prior to the garbage collection pause to determine a second total estimated evacuation time to evacuate the second candidate subset of memory regions; determining that the second total estimated evacuation time to evacuate the second candidate subset of regions does not exceed the determined second remaining time; and evacuating each region in the second candidate subset of memory regions for evacuation.

Plain English Translation

This invention relates to memory management in computing systems, specifically optimizing garbage collection during pause periods. The problem addressed is efficiently reclaiming memory regions while minimizing pause times, which is critical for real-time or latency-sensitive applications. The system dynamically selects subsets of memory regions for evacuation based on remaining pause time and intermediate estimates of evacuation time. The process begins by evacuating a first subset of memory regions during an initial pause. After evacuating each region in this subset, the system determines a remaining time for the pause. Based on this remaining time and intermediate estimates of evacuation times for other regions, a second subset of memory regions is selected. The system merges pre-computed estimates for the second subset to determine a total estimated evacuation time. If this estimated time does not exceed the remaining pause time, the system evacuates each region in the second subset. This iterative approach ensures that memory reclamation is maximized within the available pause duration, improving system performance without exceeding latency constraints. The method dynamically adjusts to varying pause lengths, optimizing garbage collection efficiency.

Claim 4

Original Legal Text

4. The medium of claim 1 , wherein selecting the candidate subset of memory regions for evacuation further comprises selecting a plurality of regions for inclusion in the candidate subset of memory regions based on an amount of overlap of references within the plurality of regions.

Plain English Translation

This invention relates to memory management in computing systems, specifically optimizing the process of evacuating memory regions to reduce fragmentation and improve performance. The problem addressed is the inefficiency in selecting memory regions for evacuation, which can lead to excessive overhead and degraded system performance. The invention provides a method for selecting a candidate subset of memory regions for evacuation based on the amount of overlap of references within those regions. By analyzing reference patterns, the system identifies regions with significant overlap, indicating that they are frequently accessed together, and prioritizes them for evacuation. This approach reduces the number of regions that need to be moved, minimizing fragmentation and computational overhead. The method involves tracking references to memory regions, calculating overlap metrics, and dynamically adjusting the selection criteria to adapt to changing workloads. The invention also includes a computer-readable medium storing instructions for performing these operations, ensuring compatibility with various computing environments. The solution improves memory management efficiency, particularly in systems with high memory usage or frequent memory operations.

Claim 5

Original Legal Text

5. The medium of claim 1 , wherein the probabilistic cardinality estimator algorithm is a HyperLogLog algorithm.

Plain English Translation

A probabilistic cardinality estimation system is designed to efficiently estimate the number of distinct elements in a large dataset without storing all elements. The system addresses the computational and memory challenges of exact cardinality estimation, which becomes impractical for very large datasets. The core technology involves a probabilistic algorithm that approximates the cardinality using a compact data structure, reducing memory usage and processing time while maintaining accuracy within a controlled error margin. The system includes a data processing module that receives input data and applies a probabilistic cardinality estimator algorithm to generate an estimated count of distinct elements. The algorithm processes the input data by hashing each element and using the hash values to update the estimator's internal state, which is stored in a compact form. The system also includes an output module that provides the estimated cardinality to a user or another system component. In this specific implementation, the probabilistic cardinality estimator algorithm is a HyperLogLog algorithm, which is known for its efficiency and accuracy in estimating cardinalities. The HyperLogLog algorithm uses a series of hash functions and bitwise operations to approximate the number of distinct elements, leveraging probabilistic data structures to minimize memory usage. This approach allows the system to handle very large datasets with high scalability and low computational overhead.

Claim 6

Original Legal Text

6. The medium of claim 1 , the operations further comprising: adjusting the total estimated evacuation time to evacuate the candidate subset of regions based on a ratio of a number memory regions that are evacuated and a total number of memory regions in the memory heap.

Plain English Translation

This invention relates to memory management in computing systems, specifically optimizing the evacuation process in garbage collection for memory heaps. The problem addressed is inefficient memory evacuation during garbage collection, which can lead to prolonged pauses and degraded system performance. The invention improves upon prior art by dynamically adjusting the estimated evacuation time for a subset of memory regions based on the ratio of already-evacuated regions to the total regions in the heap. This adjustment ensures more accurate time predictions, reducing unnecessary delays and improving garbage collection efficiency. The system first identifies a candidate subset of regions to evacuate, then calculates an initial estimated evacuation time for this subset. The key innovation is the subsequent adjustment of this time estimate by factoring in the ratio of evacuated regions to the total heap regions. This ratio provides a real-time measure of progress, allowing the system to refine the evacuation time prediction dynamically. The method ensures that the evacuation process adapts to varying memory conditions, minimizing disruptions and optimizing system performance. The invention is particularly useful in environments where low-latency garbage collection is critical, such as real-time applications or high-performance computing.

Claim 7

Original Legal Text

7. The medium of claim 1 , wherein the operations further comprise: determining that the total estimated evacuation time to evacuate the candidate subset of regions exceeds an efficiency threshold.

Plain English Translation

This invention relates to emergency evacuation systems, specifically optimizing evacuation routes to improve efficiency. The problem addressed is ensuring that evacuation plans account for time constraints, preventing bottlenecks or delays that could endanger occupants. The system evaluates candidate subsets of regions within a building or facility to determine if the total estimated evacuation time exceeds a predefined efficiency threshold. If the threshold is exceeded, the system adjusts the evacuation plan to prioritize faster routes or redistribute occupants to reduce congestion. The invention builds on a broader system that identifies regions, assigns evacuation routes, and simulates evacuation scenarios. The efficiency threshold is a critical parameter that ensures evacuation times remain within acceptable limits, balancing speed and safety. By dynamically assessing and adjusting evacuation plans, the system enhances overall evacuation efficiency and reduces risks during emergencies. The invention is particularly useful in large or complex facilities where evacuation logistics are challenging, such as office buildings, hospitals, or industrial plants. The focus on time-based optimization ensures that evacuation plans are both practical and effective in real-world scenarios.

Claim 8

Original Legal Text

8. A method comprising: concurrently with execution of a mutator application that modifies a heap memory comprising a plurality of memory regions and prior to initiating a garbage collection pause to perform a garbage collection operation: for each of the plurality of regions in the heap memory, computing an estimate indicative of a time required to evacuate the respective region by applying a probabilistic cardinality estimator algorithm to the region to estimate a number of unique objects present within a set that includes the region; during the garbage collection pause having a particular pause duration: selecting, from the plurality of memory regions in the heap memory, a candidate subset of memory regions for evacuation, the candidate subset being selected based at least in part on the particular pause duration and the estimates computed prior to the garbage collection pause; merging the estimates that (a) correspond to the selected candidate subset of memory regions and (b) are computed prior to the garbage collection pause to determine a total estimated evacuation time to evacuate the candidate subset of memory regions; determining a first remaining time during the pause; determining that the total estimated evacuation time to evacuate the candidate subset of regions does not exceed the determined first remaining time; and evacuating each region in the candidate subset of memory regions for evacuation; wherein the method is performed by at least one device including a hardware processor.

Plain English Translation

In the domain of memory management for computing systems, particularly garbage collection in heap memory, a method optimizes the evacuation of memory regions during garbage collection pauses to minimize pause duration. The method addresses the challenge of efficiently selecting memory regions for evacuation within a constrained pause time, ensuring system performance while reducing latency. The method operates concurrently with a mutator application that modifies heap memory, which consists of multiple memory regions. Before initiating a garbage collection pause, the method computes an estimate of the time required to evacuate each region by applying a probabilistic cardinality estimator algorithm. This algorithm estimates the number of unique objects in each region, providing a basis for time estimation. During the garbage collection pause, the method selects a subset of memory regions for evacuation based on the pause duration and the precomputed estimates. The estimates for the selected regions are merged to determine the total estimated evacuation time. The method then checks if this total time fits within the remaining pause duration. If confirmed, the selected regions are evacuated. The process is executed by a hardware processor, ensuring efficient memory management with minimal disruption to application performance.

Claim 9

Original Legal Text

9. The method of claim 8 , wherein selecting the candidate subset of regions for evacuation comprises: determining a remaining time during the pause; selecting the candidate subset of regions for evacuation such that a total of intermediate estimates for each region in the subset is less than the determined remaining time.

Plain English Translation

This invention relates to optimizing data processing during pauses in a system, particularly in scenarios where computational resources are temporarily unavailable. The problem addressed is efficiently managing intermediate data estimates to ensure timely completion of tasks when processing resumes. The method involves selecting a subset of regions for evacuation based on the remaining time during a pause. First, the remaining time during the pause is determined. Then, a candidate subset of regions is selected such that the total time required to compute intermediate estimates for each region in the subset is less than the determined remaining time. This ensures that the system can complete necessary computations within the available pause period, preventing delays when processing resumes. The method may also involve prioritizing regions based on factors like data importance or processing complexity to further optimize efficiency. By dynamically adjusting the subset of regions based on available time, the system avoids overloading resources and maintains smooth operation during interruptions. This approach is particularly useful in real-time systems where pauses are frequent, such as in distributed computing or embedded systems.

Claim 10

Original Legal Text

10. The method of claim 8 , further comprising: after evacuating each region in the candidate subset of memory regions for evacuation: determining a second remaining time during the pause; selecting a second candidate subset of regions for evacuation, the second candidate subset of memory regions for evacuation being selected based at least in part on the determined second remaining time and computed intermediate estimates for the second candidate subset of regions for evacuation; merging the estimates that (a) correspond to the second candidate subset of memory regions and (b) are computed prior to the garbage collection pause to determine a second total estimated evacuation time to evacuate the candidate subset of memory regions; determining that the second total estimated evacuation time to evacuate the second candidate subset of regions does not exceed the determined second remaining time; and evacuating each region in the second candidate subset of memory regions for evacuation.

Plain English Translation

This invention relates to memory management in computing systems, specifically optimizing garbage collection during pause periods. The problem addressed is efficiently evacuating memory regions within limited pause time constraints to minimize system disruption. The method involves dynamically selecting and evacuating memory regions based on real-time estimates of evacuation time and remaining pause duration. The process begins by identifying a first subset of memory regions for evacuation during an initial pause. After evacuating these regions, the remaining pause time is recalculated. A second subset of regions is then selected based on this remaining time and updated estimates of evacuation time for each candidate region. These estimates are derived from prior computations made before the garbage collection pause. The system merges these precomputed estimates to determine the total time required to evacuate the second subset. If this total time does not exceed the remaining pause time, the second subset is evacuated. This iterative approach ensures that memory regions are processed efficiently within the available pause window, reducing the risk of exceeding pause time limits and improving system performance. The method dynamically adjusts to changing conditions, optimizing memory management during garbage collection pauses.

Claim 11

Original Legal Text

11. The method of claim 8 , wherein computing an intermediate estimate indicative of a time required to evacuate a region comprises: determining that multiple particular memory regions are known to always be evacuated together; and computing a single estimate for evacuation of the multiple regions known to be evacuated together; and wherein selecting the candidate subset of memory regions for evacuation comprises selecting the multiple particular memory regions.

Plain English Translation

This invention relates to optimizing memory evacuation processes in computing systems, particularly for scenarios where certain memory regions are always evacuated together. The problem addressed is the inefficiency in computing individual evacuation times for memory regions that are known to be evacuated as a group, leading to redundant calculations and suboptimal performance. The method involves determining that multiple specific memory regions are always evacuated together, then computing a single evacuation time estimate for the entire group rather than calculating individual estimates for each region. This reduces computational overhead and improves efficiency. When selecting a subset of memory regions for evacuation, the method prioritizes choosing these grouped regions as a unit, ensuring consistency and further optimizing the evacuation process. The approach leverages pre-existing knowledge about memory region dependencies to streamline evacuation time calculations and decision-making, enhancing overall system performance.

Claim 12

Original Legal Text

12. The method of claim 8 , wherein the probabilistic cardinality estimator algorithm is a HyperLogLog algorithm.

Plain English Translation

A probabilistic cardinality estimation method is used to efficiently estimate the number of distinct elements in a large dataset without storing all elements. This is particularly useful in big data applications where memory and computational efficiency are critical. The method employs a HyperLogLog algorithm, which is a space-efficient probabilistic data structure designed to estimate the cardinality of a set. The HyperLogLog algorithm processes input data by hashing each element and using the hash values to update a small array of counters. The algorithm leverages the properties of hash functions to approximate the number of distinct elements based on the distribution of the hash values. By using a logarithmic number of bits per counter, the HyperLogLog algorithm achieves high accuracy with minimal memory usage, making it suitable for large-scale data processing tasks. The method may be applied in various domains, including database systems, network traffic analysis, and real-time analytics, where accurate cardinality estimation is required without the overhead of exact counting. The HyperLogLog algorithm provides a balance between precision and efficiency, allowing for scalable solutions in environments with limited resources.

Claim 13

Original Legal Text

13. The method of claim 8 , further comprising: adjusting the total estimated evacuation time to evacuate the candidate subset of regions based on a ratio of a number memory regions that are evacuated and a total number of memory regions in the memory heap.

Plain English Translation

This invention relates to optimizing memory management in computing systems, specifically improving the efficiency of garbage collection processes in memory heaps. The problem addressed is the need to accurately estimate and adjust evacuation times for memory regions during garbage collection to enhance performance and reduce system overhead. The method involves selecting a subset of memory regions within a memory heap for evacuation, where evacuation refers to the process of relocating or reclaiming memory to manage fragmentation and free up space. The total estimated evacuation time for this subset is dynamically adjusted based on the ratio of the number of memory regions already evacuated to the total number of memory regions in the heap. This adjustment ensures that the evacuation process adapts to the current state of the memory heap, improving efficiency by avoiding overestimation or underestimation of time requirements. The method also includes determining the candidate subset of regions for evacuation based on criteria such as memory usage, fragmentation levels, or other performance metrics. By dynamically adjusting the evacuation time, the system can prioritize regions that are more critical to free up, reducing the overall time and computational resources required for garbage collection. This approach helps maintain system performance by minimizing disruptions caused by memory management operations.

Claim 14

Original Legal Text

14. The method of claim 8 , further comprising: determining that the total estimated evacuation time to evacuate the candidate subset of regions exceeds an efficiency threshold.

Plain English Translation

This invention relates to emergency evacuation systems, specifically optimizing evacuation routes in large or complex environments like buildings, facilities, or public spaces. The problem addressed is inefficient evacuation planning, where traditional methods may not account for dynamic conditions or optimal path selection, leading to delays or bottlenecks during emergencies. The method involves analyzing a set of regions within an evacuation area to identify a candidate subset of regions that can be evacuated in a coordinated manner. This includes evaluating factors such as occupancy, distance to exits, and potential obstacles. The method further determines whether the total estimated evacuation time for the candidate subset exceeds a predefined efficiency threshold. If it does, the system may adjust the evacuation plan, such as rerouting or prioritizing certain exits, to improve efficiency. The goal is to minimize evacuation time while ensuring safety and compliance with regulatory standards. The system may integrate real-time data, such as sensor inputs or occupancy tracking, to dynamically update evacuation strategies. This approach enhances emergency preparedness by ensuring that evacuation plans are both effective and adaptable to changing conditions.

Claim 15

Original Legal Text

15. A system comprising: at least one device including a hardware processor; the system being configured to perform operations comprising: concurrently with execution of a mutator application that modifies a heap memory comprising a plurality of memory regions and prior to initiating a garbage collection pause to perform a garbage collection operation: for each of the plurality of regions in the heap memory, computing an estimate indicative of a time required to evacuate the respective region by applying a probabilistic cardinality estimator algorithm to the region to estimate a number of unique objects present within a set that includes the region; during the garbage collection pause having a particular pause duration: selecting, from the plurality of memory regions in the heap memory, a candidate subset of memory regions for evacuation, the candidate subset being selected based at least in part on the particular pause duration and the estimates computed prior to the garbage collection pause; merging the estimates that (a) correspond to the selected candidate subset of memory regions and (b) are computed prior to the garbage collection pause to determine a total estimated evacuation time to evacuate the candidate subset of memory regions; determining a first remaining time during the pause; determining that the total estimated evacuation time to evacuate the candidate subset of regions does not exceed the determined first remaining time; and evacuating each region in the candidate subset of memory regions for evacuation.

Plain English Translation

The system optimizes garbage collection in memory management by dynamically selecting memory regions for evacuation based on estimated processing time. In a computing environment where a mutator application modifies heap memory, the system preemptively analyzes memory regions to predict evacuation time before a garbage collection pause. Using a probabilistic cardinality estimator, the system estimates the number of unique objects in each region to compute an evacuation time estimate. During the garbage collection pause, the system selects a subset of regions for evacuation based on the pause duration and precomputed estimates. It merges these estimates to determine the total evacuation time for the selected regions and verifies that this time fits within the remaining pause duration. If confirmed, the system proceeds to evacuate the selected regions. This approach improves efficiency by dynamically adapting garbage collection to available pause time, reducing unnecessary processing and minimizing application disruption. The system ensures optimal memory management by leveraging probabilistic estimation to balance performance and resource utilization.

Claim 16

Original Legal Text

16. The system of claim 15 , wherein selecting the candidate subset of regions for evacuation comprises: determining a remaining time during the pause; selecting the candidate subset of regions for evacuation such that a total of intermediate estimates for each region in the subset is less than the determined remaining time.

Plain English Translation

This invention relates to a system for optimizing evacuation planning during pauses in a process, such as manufacturing or logistics, where operations must temporarily halt. The problem addressed is efficiently selecting regions for evacuation within the limited pause duration to minimize disruptions while ensuring safety and operational continuity. The system determines the remaining time available during the pause and selects a subset of regions for evacuation. The selection is based on calculating intermediate estimates for each region, representing the time required to evacuate that region. The system ensures the total time for evacuating the selected subset does not exceed the remaining pause duration. This approach optimizes resource allocation and reduces downtime by prioritizing regions that can be evacuated within the available timeframe. The system may also include additional features, such as dynamically adjusting evacuation priorities based on real-time conditions, integrating sensor data to assess region status, and providing alerts or notifications to personnel. The goal is to balance safety and efficiency, ensuring critical areas are evacuated without unnecessary delays or resource waste. This method is particularly useful in environments where pauses are frequent or unpredictable, such as automated production lines or emergency response scenarios.

Claim 17

Original Legal Text

17. The system of claim 15 , the operations further comprising: after evacuating each region in the candidate subset of memory regions for evacuation: determining a second remaining time during the pause; selecting a second candidate subset of regions for evacuation, the second candidate subset of memory regions for evacuation being selected based at least in part on the determined second remaining time and computed intermediate estimates for the second candidate subset of regions for evacuation; merging the estimates that (a) correspond to the second candidate subset of memory regions and (b) are computed prior to the garbage collection pause to determine a second total estimated evacuation time to evacuate the candidate subset of memory regions; determining that the second total estimated evacuation time to evacuate the second candidate subset of regions does not exceed the determined second remaining time; and evacuating each region in the second candidate subset of memory regions for evacuation.

Plain English Translation

This invention relates to memory management in computing systems, specifically optimizing garbage collection during pause periods. The problem addressed is efficiently evacuating memory regions within a limited pause time to minimize system disruptions. The system dynamically selects subsets of memory regions for evacuation based on real-time estimates of evacuation time and remaining pause duration. Initially, a first subset of regions is evacuated, and the remaining time is recalculated. A second subset is then selected based on this remaining time and intermediate evacuation estimates. The system merges pre-pause estimates for the second subset to compute a total estimated evacuation time, ensuring it does not exceed the remaining pause time. This iterative approach allows for more regions to be evacuated within the pause window, improving memory efficiency without extending pause duration. The method dynamically adjusts selections to maximize memory cleanup while adhering to pause constraints, enhancing system performance during garbage collection.

Claim 18

Original Legal Text

18. The system of claim 15 , wherein the probabilistic cardinality estimator algorithm is a HyperLogLog algorithm.

Plain English Translation

A system for estimating the cardinality of data streams or large datasets uses a probabilistic cardinality estimator algorithm to provide accurate approximations of unique elements without requiring full data storage. The system is designed to address the computational and memory inefficiencies of traditional exact counting methods, which become impractical for large-scale data processing. The probabilistic approach reduces memory usage and processing time while maintaining acceptable accuracy levels. In this system, the probabilistic cardinality estimator algorithm is specifically implemented as a HyperLogLog algorithm. HyperLogLog is a state-of-the-art probabilistic data structure that uses a fixed-size memory structure to estimate the number of distinct elements in a dataset. It achieves high accuracy with minimal memory overhead by leveraging hash functions and bitwise operations to approximate cardinality. The system may also include preprocessing steps to prepare input data for the estimator, such as filtering or normalization, and may integrate with other data processing components to provide real-time or batch-based cardinality estimates. The use of HyperLogLog ensures that the system can handle high-throughput data streams efficiently while maintaining scalability across distributed computing environments.

Claim 19

Original Legal Text

19. The system of claim 15 , the operations further comprising: adjusting the total estimated evacuation time to evacuate the candidate subset of regions based on a ratio of a number memory regions that are evacuated and a total number of memory regions in the memory heap.

Plain English Translation

The invention relates to optimizing memory management in computing systems, specifically improving the efficiency of garbage collection processes in memory heaps. The problem addressed is the need to accurately estimate and adjust evacuation times for memory regions during garbage collection to enhance system performance and reduce latency. The system includes a memory heap divided into multiple regions, where a subset of these regions is selected for evacuation based on criteria such as memory usage or fragmentation levels. The system calculates an initial estimated evacuation time for the selected regions, which represents the time required to relocate or reclaim memory from these regions. To refine this estimate, the system dynamically adjusts the total estimated evacuation time by considering the ratio of already-evacuated memory regions to the total number of regions in the heap. This adjustment ensures that the evacuation process adapts to real-time conditions, such as varying memory access patterns or system load, leading to more precise time predictions and better resource utilization. The system may also prioritize regions for evacuation based on factors like memory pressure or application requirements, further optimizing the garbage collection process. By continuously monitoring and adjusting the evacuation time estimates, the system minimizes disruptions to application performance while ensuring efficient memory reclamation. This approach is particularly useful in environments where low-latency garbage collection is critical, such as real-time systems or high-performance computing applications.

Claim 20

Original Legal Text

20. The system of claim 15 , the operations further comprising: determining that the total estimated evacuation time to evacuate the candidate subset of regions exceeds an efficiency threshold.

Plain English Translation

A system for optimizing evacuation planning in emergency scenarios involves analyzing regions to determine evacuation routes and timelines. The system identifies a candidate subset of regions that can be evacuated together based on shared infrastructure or geographic proximity. It calculates the total estimated evacuation time for this subset, considering factors such as population density, available exits, and transportation capacity. If this estimated time exceeds a predefined efficiency threshold, the system triggers an adjustment process. This may involve redistributing resources, modifying evacuation routes, or selecting a different subset of regions to improve efficiency. The system ensures that evacuation plans are both feasible and timely, reducing risks during emergencies. The efficiency threshold is a predefined metric that balances speed and resource utilization, ensuring that evacuation efforts are optimized without compromising safety. The system dynamically adapts to changing conditions, such as new data on road closures or increased population density, to maintain optimal evacuation strategies. This approach enhances emergency response by minimizing evacuation delays and maximizing the use of available resources.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

January 11, 2021

Publication Date

February 1, 2022

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, FAQs, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Low overhead cardinality estimation for incoming references in regional garbage collection” (US-11237958). https://patentable.app/patents/US-11237958

© 2026 Nomic Interactive Technology LLC. Machine-readable context available at /api/llm-context/US-11237958. See llms.txt for full attribution policy.

Low overhead cardinality estimation for incoming references in regional garbage collection