← Back to Patent Explorer
US6453319B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Maintaining counters for high performance object cache

Assignee: Google LLC
•
Filing: 2000-04-05
•
Granted: 2002-09-17
•
Expires: 2020-04-05
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A high-performance cache is disclosed. The cache is designed for time- and space-efficiency for a diverse range of information objects. Information objects are stored in portions of a non-volatile storage device called arenas, which are contiguous regions from which space is allocated in parallel. Objects are substantially contiguously allocated within an arena and are mapped by name keys and content-based object keys to a tag table, an open directory, and a directory table. The tag table is indexed by the name keys, and stores references to sets in the directory table. The tag table is compact and therefore can be stored in fast main memory, facilitating rapid lookups. The directory table is organized so that at least a frequently-accessed portion of it also usually resides in fast main memory, which further speeds lookups. The tag and directory tables are organized to quickly determine non-presence of objects. Large objects are chunked into fragments, which are chained using a forward functional-iteration mechanism, to prevent the need for mutating existing on-disk data structures. Garbage collection periodically moves objects within an arena or to other arenas. Additionally, for a plurality of counters, the following is computed: (1) the sum of values stored in the counters, and (2) the maximum value that can be represented by the coimters. Each of the counters are decremented when the sum is greater than half of the maximum value. Each of the counters is associated with an information object, which is deleted when a counter is decremented to zero.

Inventors

  • 👤 Peter Mattis
  • 👤 John Plevyak
  • 👤 Matthew Haines
  • 👤 Adam Beguelin
  • 👤 Brian Totty
  • 👤 David Gourley

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 03:41
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/90; G06F16/95; G06F16/957; G06F16/9574; H; H04; H04L; H04L67/00; H04L67/50; H04L67/56; H04L67/568; Y; Y10; Y10S; Y10S707/00; Y10S707/953; Y10S707/955; Y10S707/99941; Y10S707/99944

Claims Analysis

Total Claims: 18
Claim 1
Independent Claim 101 words
A method of managing a plurality of counters stored in a computer memory, comprising the steps of: computing a sum by summing values actually stored in each of the plurality of counters; determining the maximum value that can be stored in each of the plurality of counters; determining a maximum sum value by summing the maximum values that can be stored in each of the plurality of counters; determining a threshold value based on the maximum sum value; and decrementing each of the counters when the sum is greater than the threshold value that is based on a maximum sum value.
Claim 2
Independent Claim 101 words
A method of managing a plurality of counters stored in a computer memory, comprising the steps of: computing a sum by summing values actually stored in each of the plurality of counters; determining the maximum value that can be stored in each of the plurality of counters; determining a maximum sum value by summing the maximum values that can be stored in each of the plurality of counters; determining a threshold value based on the maximum sum value; and decrementing each of the counters when the sum is greater than the threshold value that is based on a maximum sum value.
Claim 3
Dependent Claim 58 words
The method recited in claim 1 , further comprising the steps of: storing each of the plurality of counters in association with a description of one of a plurality of information objects stored in a cache; and deleting one of the information objects that is associated with one of the counters when the counter is decremented to zero.
Claim 4
Dependent Claim 19 words
The method of claim 1 , wherein the threshold value is a particular percentage of the maximum sum value.
Claim 5
Dependent Claim 20 words
The method of claim 3 , wherein the threshold value is equal to one half of the maximum sum value.
Claim 6
Dependent Claim 45 words
The method of claim 1 , wherein: each counter of said plurality of counters is associated with a corresponding information object in a cache; and the steps further include incrementing a particular counter of said plurality of counters when the corresponding information object is accessed.
Claim 7
Dependent Claim 77 words
The method of claim 5 , wherein: each counter of said plurality of counters is associated with a corresponding information object in a cache; the plurality of counters includes a first counter associated with a corresponding first information object; the step of decrementing each counter includes decrementing said first counter to a threshold counter value; and the steps further include deleting the first information object when the first counter has been decremented to the threshold counter value.
Claim 8
Dependent Claim 13 words
The method of claim 6 , wherein the threshold counter value is zero.
Claim 9
Dependent Claim 26 words
The method claim 1 , further including identifying a set of information objects as least recently used based on the values of said plurality of counters.
Claim 10
Dependent Claim 139 words
A computer-readable medium carrying one or more sequences of one or more instructions for managing a plurality of counters stored in a computer memory, the one or more sequences of one or more instructions including instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of: computing a sum by summing values actually stored in each of the plurality of counters; determining the maximum value that can be stored in each of the plurality of counters; determining a maximum sum value by summing the maximum values that can be stored in each of the plurality of counters; determining a threshold value based on the maximum sum value; and decrementing each of the counters when the sum is greater than the threshold value that is based on a maximum sum value.
Claim 11
Dependent Claim 139 words
A computer-readable medium carrying one or more sequences of one or more instructions for managing a plurality of counters stored in a computer memory, the one or more sequences of one or more instructions including instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of: computing a sum by summing values actually stored in each of the plurality of counters; determining the maximum value that can be stored in each of the plurality of counters; determining a maximum sum value by summing the maximum values that can be stored in each of the plurality of counters; determining a threshold value based on the maximum sum value; and decrementing each of the counters when the sum is greater than the threshold value that is based on a maximum sum value.
Claim 12
Dependent Claim 64 words
The computer-readable medium recited in claim 9 , further comprising sequences of instructions for performing the steps of: storing each of the plurality of counters in association with a description of one of a plurality of information objects stored in a cache; and deleting one of the information objects that is associated with one of the counters when the counter is decremented to zero.
Claim 13
Dependent Claim 20 words
The computer-readable media of claim 9 , wherein the threshold value is a particular percentage of the maximum sum value.
Claim 14
Dependent Claim 21 words
The computer-readable media of claim 11 , wherein the threshold value is equal to one half of the maximum sum value.
Claim 15
Dependent Claim 46 words
The computer-readable media of claim 9 , wherein: each counter of said plurality of counters is associated with a corresponding information object in a cache; and the steps further include incrementing a particular counter of said plurality of counters when the corresponding information object is accessed.
Claim 16
Dependent Claim 83 words
The computer-readable media of claim 13 , wherein: each counter of said plurality of counters is associated with a corresponding information object in a cache; the plurality of counters includes a first counter associated with a corresponding first information object; the step of decrementing each counter includes decrementing said first counter to a threshold counter value; and the steps further include deleting the first information object when the first counter associated with the information object has been decremented to the threshold counter value.
Claim 17
Dependent Claim 14 words
The computer-readable media of claim 14 , wherein the threshold counter value is zero.
Claim 18
Dependent Claim 31 words
The computer-readable media of claim 9 , wherein the steps further include identifying a set of information objects as least recently used based on the values of said plurality of counters.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2005-09-16 2006-03-18 2006-09-17 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2009-09-16 2010-03-18 2010-09-17 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2013-09-16 2014-03-18 2014-09-17 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag