Combined Replacement Modes Patents (Class 711/134)
  • Patent number: 7930484
    Abstract: Instructions involving a relatively significant data transfer or a particular type of data transfer via a cache result in the application of a restricted access policy to control access to one or more partitions of the cache so as to reduce or prevent the overwriting of data that is expected to be subsequently used by the cache or by a processor. A processor or other system component may assert a signal which is utilized to select between one or more access policies and the selected access policy then may be applied to control access to one or more ways of the cache during the data transfer operation associated with the instruction. The access policy typically represents an access restriction to particular cache partitions, such as a restriction to one or more particular cache ways or one or more particular cache lines.
    Type: Grant
    Filed: February 7, 2005
    Date of Patent: April 19, 2011
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Stephen P. Thompson, Mark A. Krom
  • Patent number: 7917700
    Abstract: A method and a cache control circuit for replacing a cache line using an alternate pseudo least-recently-used (PLRU) algorithm with a victim cache coherency state, and a design structure on which the subject cache control circuit resides are provided. When a requirement for replacement in a congruence class is identified, a first PLRU cache line for replacement and an alternate PLRU cache line for replacement in the congruence class are calculated. When the first PLRU cache line for replacement is in the victim cache coherency state, the alternate PLRU cache line is picked for use.
    Type: Grant
    Filed: October 25, 2007
    Date of Patent: March 29, 2011
    Assignee: International Business Machines Corporation
    Inventors: John David Irish, Chad B. McBride, Jack Chris Randolph
  • Patent number: 7899994
    Abstract: In one embodiment, the present invention includes a method for associating a first priority indicator with first data stored in a first entry of a cache memory to indicate a priority level of the first data, and updating a count value associated with the first priority indicator. The count value may then be used in determining an appropriate cache line for eviction. Other embodiments are described and claimed.
    Type: Grant
    Filed: August 14, 2006
    Date of Patent: March 1, 2011
    Assignee: Intel Corporation
    Inventors: Li Zhao, Ravishankar Iyer, Ramesh Illikkal, Srihari Makineni, Donald Newell
  • Patent number: 7895392
    Abstract: Color-based caching allows each cache line to be distinguished by a specific color, and enables the manipulation of cache behavior based upon the colors of the cache lines. When multiple threads are able to share a cache, effective cache management is critical to overall performance. Color-based caching provides an effective method to better utilize a cache and avoid unnecessary cache thrashing and/or pollution. The color based caching can be monitored to improve memory performance and guarantee Quality-Of-Service of cache utilization.
    Type: Grant
    Filed: January 5, 2007
    Date of Patent: February 22, 2011
    Assignee: International Business Machines
    Inventors: Xiaowei Shen, David F. Bacon, Robert W. Wisniewski, Orran Krieger
  • Patent number: 7870341
    Abstract: Methods and apparatus allowing a choice of Least Frequently Used (LFU) or Most Frequently Used (MFU) cache line replacement are disclosed. The methods and apparatus determine new state information for at least two given cache lines of a number of cache lines in a cache, the new state information based at least in part on prior state information for the at least two given cache lines. Additionally, when an access miss occurs in one of the at least two given lines, the methods and apparatus (1) select either LFU or MFU replacement criteria, and (2) replace one of the at least two given cache lines based on the new state information and the selected replacement criteria. Additionally, a cache for replacing MFU cache lines is disclosed.
    Type: Grant
    Filed: May 30, 2008
    Date of Patent: January 11, 2011
    Assignee: International Business Machines Corporation
    Inventors: Richard Edward Matick, Jaime H. Moreno, Malcolm Scott Ware
  • Patent number: 7859703
    Abstract: Disclosed is an image forming apparatus including: a memory section having a common storage area that temporarily stores a plurality of pieces of data having different forms from each other; and a control section configured to deem an area of data expected to be deleted among the plurality of data in the common storage area, as an empty area when checking whether data is allowed to be stored in the common storage area.
    Type: Grant
    Filed: April 10, 2006
    Date of Patent: December 28, 2010
    Assignee: Konica Minolta Business Technologies, Inc.
    Inventors: Fumihito Akiyama, Masahiro Ozawa
  • Patent number: 7853762
    Abstract: Access to non-volatile memory is controlled when a first data segment is loaded in the non-volatile memory from a hard disk, a weight is calculated for the first data segment stored in the non-volatile memory based on at least one of the access frequency, the access recency, and the size of the first data segment, and the calculated weight is stored in a weight table. A removal rank is calculated for the first data segment based on at least one weight stored in the weight table, a determination is made as to whether a storage capacity of the non-volatile memory is utilized above a predetermined threshold, and a data segment is removed from the non-volatile memory based on a removal rank associated with the data segment.
    Type: Grant
    Filed: November 13, 2006
    Date of Patent: December 14, 2010
    Assignee: LG Electronics Inc.
    Inventors: Jung Hwan Lee, Jung Hwan So
  • Patent number: 7844779
    Abstract: Determining and applying a cache replacement policy for a computer application running in a computer processing system is accomplished by receiving a processor core data request, adding bits on each cache line of a plurality of cache lines to identify a core ID of an at least one processor core that provides each cache line in a shared cache, allocating a tag table for each processor core, where the tag table keeps track of an index of processor core miss rates, and setting a threshold to define a level of cache usefulness, depending on whether or not the index of processor core miss rates exceeds the threshold. Checking the threshold and when the threshold is not exceeded, then a shared cache standard policy for cache replacement is applied. When the threshold is exceeded, then the cache line from the processor core running the application is evicted from the shared cache.
    Type: Grant
    Filed: December 13, 2007
    Date of Patent: November 30, 2010
    Assignee: International Business Machines Corporation
    Inventors: Marcus L. Kornegay, Ngan N. Pham
  • Patent number: 7836257
    Abstract: A method for managing a cache operates in a data processing system with a system memory and a plurality of processing units (PUs). A first PU determines that one of a plurality of cache lines in a first cache of the first PU must be replaced with a first data block, and determines whether the first data block is a victim cache line from another one of the plurality of PUs. In the event the first data block is not a victim cache line from another one of the plurality of PUs, the first cache does not contain a cache line in coherency state invalid, and the first cache contains a cache line in coherency state moved, the first PU selects a cache line in coherency state moved, stores the first data block in the selected cache line and updates the coherency state of the first data block.
    Type: Grant
    Filed: December 19, 2007
    Date of Patent: November 16, 2010
    Assignee: International Business Machines Corpation
    Inventors: Robert John Dorsey, Jason Alan Cox, Hien Minh Le, Richard Nicholas, Eric Francis Robinson, Thuong Quang Truong
  • Patent number: 7836262
    Abstract: In one embodiment, a processor may be configured to write ECC granular stores into the data cache, while non-ECC granular stores may be merged with cache data in a memory request buffer. In one embodiment, a processor may be configured to detect that a victim block writeback hits one or more stores in a memory request buffer (or vice versa) and may convert the victim block writeback to a fill. In one embodiment, a processor may speculatively issue stores that are subsequent to a load from a load/store queue, but prevent the update for the stores in response to a snoop hit on the load.
    Type: Grant
    Filed: June 5, 2007
    Date of Patent: November 16, 2010
    Assignee: Apple Inc.
    Inventors: Ramesh Gunna, Sudarshan Kadambi
  • Patent number: 7836258
    Abstract: According to embodiments of the invention, a distributed time base signal may be coupled to a memory directory which provides address translation for data located within a memory cache. The memory directory may have attribute bits which indicate whether or not the memory entries have been accessed by the distributed time base signal. Furthermore, the memory directory may have attribute bits which indicate whether or not a memory directory entry should be considered invalid after an access to the memory entry by the distributed time base signal. If the memory directory entry has been accessed by the distributed time base signal and the memory directory entry should be considered invalid after the access by the time base signal, any attempted address translation using the memory directory entry may cause a cache miss. The cache miss may initiate the retrieval of valid data from memory.
    Type: Grant
    Filed: November 13, 2006
    Date of Patent: November 16, 2010
    Assignee: International Business Machines Corporation
    Inventors: Jeffrey Douglas Brown, Russell Dean Hoover, Eric Oliver Mejdrich
  • Patent number: 7805574
    Abstract: A caching mechanism implementing a “soft” Instruction-Most Recently Used (I-MRU) protection scheme whereby the selected I-MRU member (cache line) is only protected for a limited number of eviction cycles unless that member is updated/utilized during the period. An update or access to the instruction restarts the countdown that determines when the cache line is no longer protected as the I-MRU. Accordingly, only frequently used Instruction lines are protected, and old I-MRU lines age out of the cache. The old I-MRU members are evicted, such that all the members of a congruence class may be used for data. The I-MRU aging is accomplished through a counter or a linear feedback shift register (LFSR)-based “shootdown” of I-MRU cache lines. The LFSR is tuned such that an I-MRU line will be protected for a pre-established number of evictions.
    Type: Grant
    Filed: October 3, 2006
    Date of Patent: September 28, 2010
    Assignee: International Business Machines Corporation
    Inventors: Robert H. Bell, Jr., Jeffrey A. Stuecheli
  • Publication number: 20100191916
    Abstract: A method and a system for utilizing less recently used (LRU) bits and presence bits in selecting cache-lines for eviction from a lower level cache in a processor-memory sub-system. A cache back invalidation (CBI) logic utilizes LRU bits to evict only cache-lines within a LRU group, following a cache miss in the lower level cache. In addition, the CBI logic uses presence bits to (a) indicate whether a cache-line in a lower level cache is also present in a higher level cache and (b) evict only cache-lines in the lower level cache that are not present in a corresponding higher level cache. However, when the lower level cache-line selected for eviction is also present in any higher level cache, CBI logic invalidates the cache-line in the higher level cache. The CBI logic appropriately updates the values of presence bits and LRU bits, following evictions and invalidations.
    Type: Application
    Filed: January 23, 2009
    Publication date: July 29, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ganesh Balakrishnan, Anil Krishna
  • Patent number: 7757047
    Abstract: Maintaining a cache of indications of exclusively-owned coherence state for memory space units (e.g., cache line) allows reduction, if not elimination, of delay from missing store operations. In addition, the indications are maintained without corresponding data of the memory space unit, thus allowing representation of a large memory space with a relatively small missing store operation accelerator. With the missing store operation accelerator, a store operation, which misses in low-latency memory (e.g., L1 or L2 cache), proceeds as if the targeted memory space unit resides in the low-latency memory, if indicated in the missing store operation accelerator. When a store operation misses in low-latency memory and hits in the accelerator, a positive acknowledgement is transmitted to the writing processing unit allowing the store operation to proceed. An entry is allocated for the store operation, the store data is written into the allocated entry, and the target of the store operation is requested from memory.
    Type: Grant
    Filed: November 12, 2005
    Date of Patent: July 13, 2010
    Assignee: Oracle America, Inc.
    Inventors: Santosh G. Abraham, Lawrence A. Spracklen, Yuan C. Chou
  • Patent number: 7747812
    Abstract: A method includes configuring a flash memory device including a first memory sector having a primary memory sector correspondence, a second memory sector having an alternate memory sector correspondence, and a third memory sector having a free memory sector correspondence, copying a portion of the primary memory sector to the free memory sector, erasing the primary memory sector, and changing a correspondence of each of the first memory sector, the second memory sector, and the third memory sector.
    Type: Grant
    Filed: December 22, 2005
    Date of Patent: June 29, 2010
    Assignee: Pitney Bowes Inc.
    Inventors: Wesley A. Kirschner, Gary S. Jacobson, John A. Hurd, G. Thomas Athens, Steven J. Pauly, Richard C. Day, Jr.
  • Patent number: 7747824
    Abstract: Embodiments of the present invention provide methods and systems for efficiently tracking evicted or non-resident pages. For each non-resident page, a first hash value is generated from the page's metadata, such as the page's mapping and offset parameters. This first hash value is then used as an index to point one of a plurality of circular buffers. Each circular buffer comprises an entry for a clock pointer and entries that uniquely represent non-resident pages. The clock pointer points to the next page that is suitable for replacement and moves through the circular buffer as pages are evicted. In some embodiments, the entries that uniquely represent non-resident pages are a hash value that is generated from the page's inode data.
    Type: Grant
    Filed: April 29, 2008
    Date of Patent: June 29, 2010
    Assignee: Red Hat, Inc.
    Inventor: Henri Han van Riel
  • Patent number: 7721051
    Abstract: Method and apparatus to improve cache performance using interarrival times between demand requests are described.
    Type: Grant
    Filed: October 25, 2004
    Date of Patent: May 18, 2010
    Assignee: Intel Corporation
    Inventor: Michael K. Eschmann
  • Patent number: 7721043
    Abstract: Provided are a method, system, and article of manufacture for managing write requests in cache directed to different storage groups. A determination is made of a high and low thresholds for a plurality of storage groups configured in a storage, wherein the high and low thresholds for one storage group indicate a high and low percentage of a cache that may be used to store write requests to the storage group. A determination is made of a number of tasks to assign to the storage groups based on the determined high and low thresholds for the storage groups, wherein each task assigned to one storage group destages write requests from the cache to the storage group.
    Type: Grant
    Filed: January 8, 2007
    Date of Patent: May 18, 2010
    Assignee: International Business Machines Corporation
    Inventors: Binny Sher Gill, Michael Thomas Benhase, Joseph Smith Hyde, II, Thomas Charles Jarvis, Bruce McNutt, Dharmendra Shantilal Modha
  • Patent number: 7710841
    Abstract: A method of recording a temporary defect list on a write-once recording medium, a method of reproducing the temporary defect list, an apparatus for recording and/or reproducing the temporary defect list, and the write-once recording medium. The method of recording a temporary defect list for defect management on a write-once recording medium includes recording the temporary defect list, which is created while data is recorded on the write-once recording medium, in at least one cluster of the write-once recording medium, and verifying if a defect is generated in the at least one cluster. Then, the method includes re-recording data originally recorded in a defective cluster in another cluster, and recording pointer information, which indicates a location of the at least one cluster where the temporary defect list is recorded, on the write-once recording medium.
    Type: Grant
    Filed: June 27, 2007
    Date of Patent: May 4, 2010
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Sung-hee Hwang, Jung-wan Ko
  • Patent number: 7702972
    Abstract: SRAM macro sparing allows for full chip function despite the loss of one or more SRAM macros. The controls and data flow for any single macro within a protected group are made available to the spare or spares for that group. This allows a defective or failed SRAM macro to be shut off and replaced by a spare macro, dramatically increasing manufacturing yield and decreasing field replacement rates. The larger the protected group, the fewer the number of spares required for similar improvements in yield, but also the more difficult the task of making all the controls and dataflow available to the spare(s). In the case of the Level 2 Cache chip for the planned IBM Z6 computer, there are 4 protected groups with 192 SRAM macros per group. Each protected group is supplanted with an additional 2 spare SRAM macros, along with sparing controls and dataflow that allow either spare to replace any of the 192 protected SRAM macros.
    Type: Grant
    Filed: October 18, 2007
    Date of Patent: April 20, 2010
    Assignee: International Business Machines Corporation
    Inventors: Timothy Carl Bronson, Garrett Drapala, Hieu Trong Huynh, Patrick James Meaney
  • Patent number: 7698506
    Abstract: A technique for partially offloading, from a main cache in a storage server, the storage of cache tags for data blocks in a victim cache of the storage server, is described. The technique includes storing, in the main cache, a first subset of the cache tag information for each of the data blocks, and storing, in a victim cache of the storage server, a second subset of the cache tag information for each of the data blocks. This technique avoids the need to store the second subset of the cache tag information in the main cache.
    Type: Grant
    Filed: April 26, 2007
    Date of Patent: April 13, 2010
    Assignee: Network Appliance, Inc.
    Inventors: Robert L. Fair, William P. McGovern, Thomas C. Holland, Jason Sylvain
  • Patent number: 7685369
    Abstract: Embodiments of the present invention provide methods and systems for tuning the size of the cache. In particular, when a page fault occurs, non-resident page data is checked to determine if that page was previously accessed. If the page is found in the non-resident page data, an inter-reference distance for the faulted page is determined and the distance of the oldest resident page is determined. The size of the cache may then be tuned based on comparing the inter-reference distance of the newly faulted page relative to the distance of the oldest resident page.
    Type: Grant
    Filed: March 20, 2009
    Date of Patent: March 23, 2010
    Assignee: Red Hat, Inc.
    Inventor: Henri Han van Riel
  • Patent number: 7676632
    Abstract: Systems and methods are disclosed for locking code in cache. A processor comprises a cache and a cache controller. The cache is configured to store a temporary copy of code residing in main memory. Also, the cache is divided into a number of cache ways, where each cache way is further divided into a number of cache way portions. The cache controller is configured to utilize a first signal and a second signal. The first signal designates one of the cache ways as a partial cache way and the second signal defines which ones of the cache way portions of the partial cache way are to be locked.
    Type: Grant
    Filed: September 6, 2006
    Date of Patent: March 9, 2010
    Assignee: VIA Technologies, Inc.
    Inventor: William V. Miller
  • Patent number: 7669009
    Abstract: A method and apparatus for selecting and updating a replacement candidate in a cache is disclosed. In one embodiment, a cache miss may initiate the eviction of a present replacement candidate in a last-level cache. The cache miss may also initiate the selection of a future replacement candidate. Upon the selection of the future replacement candidate, the corresponding cache line may be invalidated in lower-level caches but remain resident in the last-level cache. The future replacement candidate may be updated by subsequent hits to the replacement candidate in the last-level cache prior to a subsequent cache miss.
    Type: Grant
    Filed: September 23, 2004
    Date of Patent: February 23, 2010
    Assignee: Intel Corporation
    Inventors: Sailesh Kottapalli, John H. Crawford
  • Publication number: 20100023699
    Abstract: A system and a method are described, whereby a data cache enables the realization of an efficient design of a usage analyzer for monitoring subscriber access to a communications network. By exploiting the speed advantages of cache memory, as well as adopting innovative data loading and retrieval choices, significant performance improvements in the time required to access the necessary data records can be realized.
    Type: Application
    Filed: July 22, 2008
    Publication date: January 28, 2010
    Applicant: Bridgewater Systems Corp.
    Inventors: Timothy James Reidel, Li Zou
  • Patent number: 7653672
    Abstract: Under program execution environment, a file size of a heap dump is reduced which is acquired so as to detect memory leaks, and so as to investigate occurrence causes of the memory leaks. In order to provide a memory leak investigating means which can be used even in a large-scaled system, the below-mentioned heap dump acquiring method is provided: When a heap dump is acquired, only such an object within objects stored in a heap memory is outputted which is adapted to the following conditions: That is, in a condition (1), an object exists among objects which are newly produced within a designated time period, and in another condition (2), an object is present on a reference path defined from a root set to the object which satisfies the above-explained condition (1).
    Type: Grant
    Filed: May 30, 2006
    Date of Patent: January 26, 2010
    Assignee: Hitachi, Ltd.
    Inventors: Koji Doi, Hiroyasu Nishiyama, Motoki Obata
  • Patent number: 7650466
    Abstract: A method of managing cache partitions provides a first pointer for higher priority writes and a second pointer for lower priority writes, and uses the first pointer to delimit the lower priority writes. For example, locked writes have greater priority than unlocked writes, and a first pointer may be used for locked writes, and a second pointer may be used for unlocked writes. The first pointer is advanced responsive to making locked writes, and its advancement thus defines a locked region and an unlocked region. The second pointer is advanced responsive to making unlocked writes. The second pointer also is advanced (or retreated) as needed to prevent it from pointing to locations already traversed by the first pointer. Thus, the pointer delimits the unlocked region and allows the locked region to grow at the expense of the unlocked region.
    Type: Grant
    Filed: September 21, 2005
    Date of Patent: January 19, 2010
    Assignee: QUALCOMM Incorporated
    Inventors: Brian Michael Stempel, James Norris Dieffenderfer, Jeffrey Todd Bridges, Thomas Andrew Sartorius, Rodney Wayne Smith, Robert Douglas Clancy, Victor Roberts Augsburg
  • Publication number: 20090282196
    Abstract: Methods for a treatment of cached objects are described. In one embodiment, management of a region of a cache is configured with an eviction policy plug-in. The eviction policy plug-in includes an eviction timing component and a sorting component, with the eviction timing component including code to implement an eviction timing method, and the eviction timing method to trigger eviction of an object from the region of cache. The sorting component includes code to implement a sorting method to identify an object that is eligible for eviction in the region of cache. The sorting method involves identifying an object that has been cached in the region of cache for a longer time period than other objects that are cached in the cache region.
    Type: Application
    Filed: May 26, 2009
    Publication date: November 12, 2009
    Inventors: Petio G. Petev, Michael Wintergerst
  • Patent number: 7600086
    Abstract: Provided is a method for managing retention of stored objects, comprising: receiving a modification request with respect to an attribute or archive policy for an object; determining whether an attribute modification protection flag or setting is set in response to the modification request requesting to modify the attribute for the object; allowing the modification of the attribute object in response to determining that the attribute modification protection flag or setting is not set; determining whether a protection retention mechanism or setting is set in response to the modification request requesting to modify the archive policy for the object; and allowing the modification of the archive policy for the object in response to determining that the protection retention mechanism or setting is not set.
    Type: Grant
    Filed: August 18, 2006
    Date of Patent: October 6, 2009
    Assignee: International Business Machines Corporation
    Inventors: Avishai Haim Hochberg, Toby Lyn Marek, David Maxwell Cannon, Howard Newton Martin, Donald Paul Warren, Jr., Mark Alan Haye, Alan L. Stuart
  • Patent number: 7590803
    Abstract: Described herein are methods and apparatus, including computer program products, that implement cache eviction for runtime systems. A computer program product can cause a data processing apparatus to compute a fill level of a cache memory; use a first eviction process to evict one or more of the entities in the cache memory if the fill level exceeds a first threshold but not a second threshold; use a second, distinct eviction process to evict one or more of the entities in the cache memory if the fill level exceeds the second threshold but not a third threshold; and decline subsequent requests to store additional entities in the cache memory if the fill level exceeds the third threshold.
    Type: Grant
    Filed: September 23, 2004
    Date of Patent: September 15, 2009
    Assignee: SAP AG
    Inventor: Michael Wintergerst
  • Publication number: 20090210628
    Abstract: Methods for selecting a line to evict from a data storage system are provided. A computer system implementing a method for selecting a line to evict from a data storage system is also provided. The methods include selecting an uncached class line for eviction prior to selecting a cached class line for eviction.
    Type: Application
    Filed: August 20, 2008
    Publication date: August 20, 2009
    Inventor: Blaine D. Gaither
  • Publication number: 20090182951
    Abstract: Methods and apparatus allowing a choice of Least Frequently Used (LFU) or Most Frequently Used (MFU) cache line replacement are disclosed. The methods and apparatus determine new state information for at least two given cache lines of a number of cache lines in a cache, the new state information based at least in part on prior state information for the at least two given cache lines. Additionally, when an access miss occurs in one of the at least two given lines, the methods and apparatus (1) select either LFU or MFU replacement criteria, and (2) replace one of the at least two given cache lines based on the new state information and the selected replacement criteria. Additionally, a cache for replacing MFU cache lines is disclosed.
    Type: Application
    Filed: May 30, 2008
    Publication date: July 16, 2009
    Applicant: International Business Machines Corporation
    Inventors: Richard Edward Matick, Jaime H. Moreno, Malcolm Scott Ware
  • Publication number: 20090182950
    Abstract: Embodiments of the present invention provide methods and systems for tuning the size of the cache. In particular, when a page fault occurs, non-resident page data is checked to determine if that page was previously accessed. If the page is found in the non-resident page data, an inter-reference distance for the faulted page is determined and the distance of the oldest resident page is determined. The size of the cache may then be tuned based on comparing the inter-reference distance of the newly faulted page relative to the distance of the oldest resident page.
    Type: Application
    Filed: March 20, 2009
    Publication date: July 16, 2009
    Applicant: RED HAT, INC.
    Inventor: Henri Han van RIEL
  • Publication number: 20090172291
    Abstract: A method and apparatus for efficiently caching streaming and non-streaming data is described herein. Software, such as a compiler, identifies last use streaming instructions/operations that are the last instruction/operation to access streaming data for a number of instructions or an amount of time. As a result of performing an access to a cache line for a last use instruction/operation, the cache line is updated to a streaming data no longer needed (SDN) state. When control logic is to determine a cache line to be replaced, a modified Least Recently Used (LRU) algorithm is biased to select SDN state lines first to replace no longer needed streaming data.
    Type: Application
    Filed: December 31, 2007
    Publication date: July 2, 2009
    Inventors: Eric Sprangle, Anwar Rohillah, Robert Cavin
  • Patent number: 7555610
    Abstract: The cache memory in the present invention includes a C flag setting unit 40 which adds, to each cache entry holding line data, a cleaning flag C indicating whether or not a write operation will be performed hereafter, and a cleaning unit 39 which writes back, to the memory, line data of a cache entry that has been added with a cleaning flag C indicating that a write operation will not be performed, and has been set with a dirty flag D indicating that the cache entry has been written into.
    Type: Grant
    Filed: November 2, 2004
    Date of Patent: June 30, 2009
    Assignee: Panasonic Corporation
    Inventors: Hazuki Okabayashi, Ryuta Nakanishi, Tetsuya Tanaka
  • Publication number: 20090164734
    Abstract: A method, system and processing device for retiring data entries held within a store queue (STQ). The STQ of a processor cache is modified to receive and process several types of data entries including: non-synchronized (non-sync), thread of execution synchronized (thread-sync), and all thread of execution synchronized (all-thread-sync). The task of storing data entries, from the STQ out to memory or an input/output device, is modified to increase the effectiveness of the cache. The modified STQ allows non-sync, thread-sync, and all-thread-sync instructions to coexist in the STQ regardless of the thread of execution. Stored data entries, or stores are deterministically selected for retirement, according to the data entry type.
    Type: Application
    Filed: December 21, 2007
    Publication date: June 25, 2009
    Applicant: IBM Corporation
    Inventor: Eric F. Robinson
  • Patent number: 7552286
    Abstract: A method and system for improving the performance of a cache. The cache may include an array of tag entries where each tag entry includes an additional bit (“reused bit”) used to indicate whether its associated cache line has been reused, i.e., has been requested or referenced by the processor. By tracking whether a cache line has been reused, data (cache line) that may not be reused may be replaced with the new incoming cache line prior to replacing data (cache line) that may be reused. By replacing data in the cache memory that might not be reused prior to replacing data that might be reused, the cache hit may be improved thereby improving performance.
    Type: Grant
    Filed: March 19, 2008
    Date of Patent: June 23, 2009
    Assignee: International Business Machines Corporation
    Inventors: Gordon T. Davis, Santiago A. Leon, Hans-Werner Tast
  • Patent number: 7549023
    Abstract: A method, apparatus, and article for caching security records for access by a hardware offloading device are disclosed. A method for updating security record entries in a hardware table is disclosed that includes marking every security record entry in the hardware table as a replacement candidate based upon passage of a determined time interval, each security record entry having a set of security parameters. Upon receiving a packet having a security record, the hardware table is checked for a security record entry corresponding to the security record. A check is done to determine whether there is a replacement candidate in the hardware table if there is no security record entry corresponding to the security record. The security record entry containing the replacement candidate is replaced with the security record if there is a replacement candidate. Other embodiments are described.
    Type: Grant
    Filed: April 21, 2003
    Date of Patent: June 16, 2009
    Assignee: Intel Corporation
    Inventors: Avigdor Eldar, Fabian Trumper, Zvi Vlodavsky, Ariel Rosenblatt
  • Patent number: 7546419
    Abstract: A method is disclosed which may include providing a cache in a computing system having an initial group of cache objects, the cache object having an initial compression ratio and including stored data; decreasing an amount of data storage space in the cache occupied by at least one of the cache objects other than a given one of the cache objects; and increasing an amount of data storage space in the cache occupied by the given cache object.
    Type: Grant
    Filed: June 1, 2005
    Date of Patent: June 9, 2009
    Inventor: Blaise Aguera y Arcas
  • Patent number: 7543273
    Abstract: The present invention provides users and processes with various features to control the memory usage by a cache and pool dynamically at runtime. The cache and pool can be initialized on demand to remove idle objects of classes from them without the server being restarted. When the cache and pool reach their maximum sizes, idle objects in them may be removed to make room for newly active objects using various strategies in batches, where the schedule (periodicity), size and processing time of each batch can be dynamically adjusted. When a newly created object is being added to a full cache where each object is enrolled in a transaction, one or more active objects may be passivated from the cache based on various criteria to make room for the new instance to be added. Various features of the cache and pool can be defined in a configuration file. This description is not intended to be a complete description of, or limit the scope of, the invention.
    Type: Grant
    Filed: October 15, 2004
    Date of Patent: June 2, 2009
    Assignee: BEA Systems, Inc.
    Inventors: Thorick Chow, Seth White
  • Patent number: 7539821
    Abstract: Methods for a treatment of cached objects are described. In one embodiment, management of a region of a cache is configured with an eviction policy plug-in. The eviction policy plug-in includes an eviction timing component and a sorting component, with the eviction timing component including code to implement an eviction timing method, and the eviction timing method to trigger eviction of an object from the region of cache. The sorting component includes code to implement a sorting method to identify an object that is eligible for eviction in the region of cache. The sorting method involves identifying an object that has been cached in the region of cache for a longer time period than other objects that are cached in the cache region.
    Type: Grant
    Filed: December 28, 2004
    Date of Patent: May 26, 2009
    Assignee: SAP AG
    Inventors: Petio G. Petev, Michael Wintergerst
  • Publication number: 20090113134
    Abstract: A method and a cache control circuit for replacing a cache line using an alternate pseudo least-recently-used (PLRU) algorithm with a victim cache coherency state, and a design structure on which the subject cache control circuit resides are provided. When a requirement for replacement in a congruence class is identified, a first PLRU cache line for replacement and an alternate PLRU cache line for replacement in the congruence class are calculated. When the first PLRU cache line for replacement is in the victim cache coherency state, the alternate PLRU cache line is picked for use.
    Type: Application
    Filed: October 25, 2007
    Publication date: April 30, 2009
    Inventors: John David Irish, Chad B. McBride, Jack Chris Randolph
  • Patent number: 7526621
    Abstract: Provided are a method, system, and program for receiving a request to remove a record. A determination is made as to whether a state associated with the record includes at least one hold state and whether the state associated with the record includes at least a retention period that has not expired. The request to remove the record is denied in response to determining that the state associated with the record includes at least one of at least one hold state and one retention period that has not expired.
    Type: Grant
    Filed: August 18, 2006
    Date of Patent: April 28, 2009
    Assignee: International Business Machines Corporation
    Inventors: Alan L. Stuart, Toby Lyn Marek, Avishai Haim Hochberg, David Maxwell Cannon, Howard Newton Martin
  • Patent number: 7526614
    Abstract: Embodiments of the present invention provide methods and systems for tuning the size of the cache. In particular, when a page fault occurs, non-resident page data is checked to determine if that page was previously accessed. If the page is found in the non-resident page data, an inter-reference distance for the faulted page is determined and the distance of the oldest resident page is determined. The size of the cache may then be tuned based on comparing the inter-reference distance of the newly faulted page relative to the distance of the oldest resident page.
    Type: Grant
    Filed: November 30, 2005
    Date of Patent: April 28, 2009
    Assignee: Red Hat, Inc.
    Inventor: Henri Han van Riel
  • Publication number: 20090106484
    Abstract: A data writing method for a non-volatile memory is provided, wherein the non-volatile memory includes a data area and a spare area. In the data writing method, a plurality of blocks in a substitution area of the non-volatile memory is respectively used for substituting a plurality of blocks in the data area, wherein data to be written into the blocks in the data area is written into the blocks in the substitution area, and the blocks in the substitution area are selected from the spare area of the non-volatile memory. A plurality of temporary blocks of the non-volatile memory is used as a temporary area of the blocks in the substitution area, wherein the temporary area is used for temporarily storing the data to be written into the blocks in the substitution area.
    Type: Application
    Filed: February 4, 2008
    Publication date: April 23, 2009
    Applicant: PHISON ELECTRONICS CORP.
    Inventors: Chih-Kang Yeh, Chien-Hua Chu, Jia-Yi Fu
  • Patent number: 7512739
    Abstract: Exemplary embodiments include a method for updating an Cache LRU tree including: receiving a new cache line; traversing the Cache LRU tree, the Cache LRU tree including a plurality of nodes; biasing a selection the victim line toward those lines with relatively low priorities from the plurality of lines; and replacing a cache line with a relatively low priority with the new cache line.
    Type: Grant
    Filed: July 5, 2006
    Date of Patent: March 31, 2009
    Assignee: International Business Machines Corporation
    Inventors: Aaron C. Sawdey, Steven P. VanderWiel
  • Patent number: 7502889
    Abstract: A home node aware replacement policy for a cache chooses to evict lines which belong to local memory over lines which belong to remote memory, reducing the average transaction cost of incorrect cache line replacements. With each entry, the cache stores a t-bit cost metric (t?1) representing a relative distance between said cache and an originating memory for the respective cache entry. Responsive to determining that no cache entry corresponds to an access request, the replacement policy selects a cache entry for eviction from the cache based at least in part on the t-bit cost metric. The selected cache entry is then evicted from the cache.
    Type: Grant
    Filed: December 30, 2005
    Date of Patent: March 10, 2009
    Assignee: Intel Corporation
    Inventor: Krishnakanth V. Sistla
  • Publication number: 20090055593
    Abstract: A storage system writes a data element stored in a primary volume to a secondary volume constituting a volume pair with the primary volume in accordance with a selected storage mode, which is a data storage mode selected from a plurality of types of data storage modes. This storage system is provided with a function for switching the above-mentioned selected storage mode from a currently selected data storage mode to a different type of data storage mode.
    Type: Application
    Filed: January 4, 2008
    Publication date: February 26, 2009
    Inventors: Ai SATOYAMA, Yoshiaki Eguchi
  • Patent number: 7480767
    Abstract: Methods and apparatus, including computer program products, for purging an item from a cache based on the expiration of a period of time and having an associated process to generate an item purged from the cache. A program stores a first item in a cache with an indication of a process to generate the first item, schedules a validity period for the first item, and purges the first item from the cache when the validity period has expired. The validity period may be optimized to be less than a period of time after which the first item would be promoted from a first generation of the cache to a second generation of the cache and invalid objects in the first generation of the cache are freed from memory more frequently than invalid objects in the second generation of the cache.
    Type: Grant
    Filed: June 15, 2006
    Date of Patent: January 20, 2009
    Assignee: SAP AG
    Inventor: Martin Moser
  • Patent number: 7478200
    Abstract: A fractional caching method and an adaptive contents transmitting method using the same are provided. The fractional caching method includes the steps of setting up a divided location for dividing a certain object into two parts, receiving an evict request for acquiring a space in the inside of the cache, when the evict request is transmitted, dividing a plurality of objects stored in the cache into a prefix-Object located in the head of the object and a suffix-Object located in the tail of the object from the divided location, and removing only the suffix-Object of each object, wherein the divided location is set up at a size rate that a size of the prefix-Object is in inverse proportion to the number of the destination types.
    Type: Grant
    Filed: September 28, 2006
    Date of Patent: January 13, 2009
    Assignee: Electronics and Telecommunications Research Institute
    Inventors: Yong Ju Lee, Ok Gee Min, Jung Keun Kim, Jin Hwan Jeong, Choon Seo Park, Hag Young Kim, Myung Joon Kim