WO1999060564A3 - Caching method for data blocks of variable size - Google Patents

Caching method for data blocks of variable size Download PDF

Info

Publication number
WO1999060564A3
WO1999060564A3 PCT/US1999/010536 US9910536W WO9960564A3 WO 1999060564 A3 WO1999060564 A3 WO 1999060564A3 US 9910536 W US9910536 W US 9910536W WO 9960564 A3 WO9960564 A3 WO 9960564A3
Authority
WO
WIPO (PCT)
Prior art keywords
data block
cache
size
caching method
block
Prior art date
Application number
PCT/US1999/010536
Other languages
French (fr)
Other versions
WO1999060564A2 (en
Inventor
Richard J Defouw
Alan Sutton
Ronald W Korngiebel
Original Assignee
Storage Technology Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Storage Technology Corp filed Critical Storage Technology Corp
Priority to EP99921940A priority Critical patent/EP1095373A2/en
Priority to JP2000550099A priority patent/JP2002516446A/en
Publication of WO1999060564A2 publication Critical patent/WO1999060564A2/en
Publication of WO1999060564A3 publication Critical patent/WO1999060564A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/122Replacement control using replacement algorithms of the least frequently used [LFU] type, e.g. with individual count value

Abstract

A caching method (30) for selecting variable size data blocks for removal from a cache (14) for a virtual tape subsystem (10) or other cached system of computer data storage includes determining (32, 34) the size and the unreferenced time interval of each data block in the cache. The size of a data block is the amount of cache space taken up by the block. The unreferenced time interval of a data block is the time that has elapsed since the block was last accessed. The recall probability per unit time of each data block in the cache is then determined (38). The recall probability of a data block is a function of its unreferenced time interval and possibly size and other auxiliary parameters. The caching method then determines (40) a quality factor (q) for each data block. The quality factor (q) of a data block is a function of its recall probability and size. The caching method concludes with removing (42) from the cache the data block with the lowest quality factor (q).
PCT/US1999/010536 1998-05-15 1999-05-12 Caching method for data blocks of variable size WO1999060564A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP99921940A EP1095373A2 (en) 1998-05-15 1999-05-12 Caching method for data blocks of variable size
JP2000550099A JP2002516446A (en) 1998-05-15 1999-05-12 How to cache variable-size data blocks

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US7987998A 1998-05-15 1998-05-15
US09/079,879 1998-05-15

Publications (2)

Publication Number Publication Date
WO1999060564A2 WO1999060564A2 (en) 1999-11-25
WO1999060564A3 true WO1999060564A3 (en) 2000-02-24

Family

ID=22153397

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1999/010536 WO1999060564A2 (en) 1998-05-15 1999-05-12 Caching method for data blocks of variable size

Country Status (4)

Country Link
US (1) US6742084B1 (en)
EP (1) EP1095373A2 (en)
JP (1) JP2002516446A (en)
WO (1) WO1999060564A2 (en)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020156863A1 (en) * 2001-04-23 2002-10-24 Luosheng Peng Apparatus and methods for managing caches on a gateway
US20020174189A1 (en) * 2001-04-23 2002-11-21 Luosheng Peng Apparatus and methods for intelligently caching applications and data on a mobile device
JP4067293B2 (en) * 2001-10-17 2008-03-26 富士通株式会社 Cache control program and cache processing computer
US6938120B2 (en) * 2002-08-29 2005-08-30 International Business Machines Corporation Apparatus and method to form one or more premigration aggregates comprising a plurality of least recently accessed virtual volumes
US6922754B2 (en) * 2002-12-09 2005-07-26 Infabric Technologies, Inc. Data-aware data flow manager
US7103729B2 (en) * 2002-12-26 2006-09-05 Intel Corporation Method and apparatus of memory management
JP2005031929A (en) * 2003-07-11 2005-02-03 Hitachi Ltd Management server for assigning storage area to server, storage device system, and program
US7085895B2 (en) * 2003-09-05 2006-08-01 International Business Machines Corporation Apparatus, system, and method flushing data from a cache to secondary storage
US9268831B2 (en) * 2004-01-12 2016-02-23 Lightfoot Solutions Group Limited System and method for extracting user selected data from a database
GB0400569D0 (en) * 2004-01-12 2004-02-11 Lightfoot Solutions Ltd System & methodology for identifying statistically signifcant events in monitored process
US7562202B2 (en) * 2004-07-30 2009-07-14 United Parcel Service Of America, Inc. Systems, methods, computer readable medium and apparatus for memory management using NVRAM
JP5057656B2 (en) 2005-05-24 2012-10-24 株式会社日立製作所 Storage system and storage system operation method
US7376792B2 (en) * 2005-08-17 2008-05-20 International Business Machines Corporation Variable cache data retention system
US7565486B2 (en) * 2005-09-26 2009-07-21 International Business Machines Corporation Method and apparatus for handling multi-volume datasets in a tape storage system
US7502775B2 (en) * 2006-03-31 2009-03-10 International Business Machines Corporation Providing cost model data for tuning of query cache memory in databases
US8141058B2 (en) * 2006-06-05 2012-03-20 Rogue Wave Software, Inc. System for and method of capturing application characteristics data from a computer system and modeling target system
US8443341B2 (en) * 2006-11-09 2013-05-14 Rogue Wave Software, Inc. System for and method of capturing application characteristics data from a computer system and modeling target system
WO2008058292A2 (en) * 2006-11-09 2008-05-15 Acumem Ab System for and method of capturing application characteristics from a computer system and modeling target system
US8539455B2 (en) * 2007-03-26 2013-09-17 Rogue Wave Software, Inc. System for and method of capturing performance characteristics data from a computer system and modeling target system performance
KR101038167B1 (en) * 2008-09-09 2011-05-31 가부시끼가이샤 도시바 Information processing device including memory management device managing access from processor to memory and memory management method
US8838850B2 (en) * 2008-11-17 2014-09-16 Violin Memory, Inc. Cluster control protocol
US8442059B1 (en) 2008-09-30 2013-05-14 Gridiron Systems, Inc. Storage proxy with virtual ports configuration
US8417895B1 (en) 2008-09-30 2013-04-09 Violin Memory Inc. System for maintaining coherency during offline changes to storage media
US8601213B2 (en) * 2008-11-03 2013-12-03 Teradata Us, Inc. System, method, and computer-readable medium for spool cache management
US8443150B1 (en) 2008-11-04 2013-05-14 Violin Memory Inc. Efficient reloading of data into cache resource
US8788758B1 (en) 2008-11-04 2014-07-22 Violin Memory Inc Least profitability used caching scheme
US8775741B1 (en) * 2009-01-13 2014-07-08 Violin Memory Inc. Using temporal access patterns for determining prefetch suitability
US20110238927A1 (en) * 2008-11-21 2011-09-29 Hiroyuki Hatano Contents distribution device , contents distribution control method, contents distribution control program and cache control device
US7913011B2 (en) * 2009-01-02 2011-03-22 The Boeing Company Method and apparatus for employing a second bus controller on a data bus having a first bus controller
JP5152006B2 (en) * 2009-01-22 2013-02-27 富士通株式会社 Storage device and storage device data transfer method
JP5298982B2 (en) * 2009-03-17 2013-09-25 日本電気株式会社 Storage system
US8667366B1 (en) 2009-04-17 2014-03-04 Violin Memory, Inc. Efficient use of physical address space for data overflow and validation
US8650362B2 (en) 2009-04-17 2014-02-11 Violin Memory Inc. System for increasing utilization of storage media
US8713252B1 (en) 2009-05-06 2014-04-29 Violin Memory, Inc. Transactional consistency scheme
US8402198B1 (en) 2009-06-03 2013-03-19 Violin Memory, Inc. Mapping engine for a storage device
US9069676B2 (en) 2009-06-03 2015-06-30 Violin Memory, Inc. Mapping engine for a storage device
WO2011010688A1 (en) * 2009-07-22 2011-01-27 日本電気株式会社 Content delivery system, content delivery method and content delivery programme
US8402246B1 (en) 2009-08-28 2013-03-19 Violin Memory, Inc. Alignment adjustment in a tiered storage system
US8832384B1 (en) 2010-07-29 2014-09-09 Violin Memory, Inc. Reassembling abstracted memory accesses for prefetching
US8959288B1 (en) 2010-07-29 2015-02-17 Violin Memory, Inc. Identifying invalid cache data
US20130246374A1 (en) * 2010-12-13 2013-09-19 Nec Corporation Data management device, system, program storage medium and method
US8972689B1 (en) 2011-02-02 2015-03-03 Violin Memory, Inc. Apparatus, method and system for using real-time performance feedback for modeling and improving access to solid state media
US8635416B1 (en) 2011-03-02 2014-01-21 Violin Memory Inc. Apparatus, method and system for using shadow drives for alternative drive commands
KR101964927B1 (en) * 2012-07-17 2019-04-03 삼성전자 주식회사 Method and apparatus for caching proxy
US9201803B1 (en) * 2012-12-31 2015-12-01 Emc Corporation System and method for caching data
GB201305400D0 (en) * 2013-03-25 2013-05-08 Univ Lancaster Cache
US9213646B1 (en) * 2013-06-20 2015-12-15 Seagate Technology Llc Cache data value tracking
JP6131818B2 (en) * 2013-10-10 2017-05-24 富士通株式会社 Cache method, cache device, and computer program
US10942629B1 (en) 2020-10-16 2021-03-09 Laitek, Inc. Recall probability based data storage and retrieval
US11481143B2 (en) * 2020-11-10 2022-10-25 Red Hat, Inc. Metadata management for extent-based storage system
US11768767B2 (en) 2021-10-29 2023-09-26 Micro Focus Llc Opaque object caching

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4315312A (en) * 1979-12-19 1982-02-09 Ncr Corporation Cache memory having a variable data block size
US4489378A (en) * 1981-06-05 1984-12-18 International Business Machines Corporation Automatic adjustment of the quantity of prefetch data in a disk cache operation
US4490782A (en) * 1981-06-05 1984-12-25 International Business Machines Corporation I/O Storage controller cache system with prefetch determined by requested record's position within data block

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5226141A (en) 1989-07-14 1993-07-06 Touch Technologies, Inc. Variable capacity cache memory
US5778424A (en) 1993-04-30 1998-07-07 Avsys Corporation Distributed placement, variable-size cache architecture
US5721874A (en) 1995-06-16 1998-02-24 International Business Machines Corporation Configurable cache with variable, dynamically addressable line sizes
US6012126A (en) * 1996-10-29 2000-01-04 International Business Machines Corporation System and method for caching objects of non-uniform size using multiple LRU stacks partitions into a range of sizes

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4315312A (en) * 1979-12-19 1982-02-09 Ncr Corporation Cache memory having a variable data block size
US4489378A (en) * 1981-06-05 1984-12-18 International Business Machines Corporation Automatic adjustment of the quantity of prefetch data in a disk cache operation
US4490782A (en) * 1981-06-05 1984-12-25 International Business Machines Corporation I/O Storage controller cache system with prefetch determined by requested record's position within data block

Also Published As

Publication number Publication date
US6742084B1 (en) 2004-05-25
WO1999060564A2 (en) 1999-11-25
EP1095373A2 (en) 2001-05-02
JP2002516446A (en) 2002-06-04

Similar Documents

Publication Publication Date Title
WO1999060564A3 (en) Caching method for data blocks of variable size
EP0817007A3 (en) Data prefetch apparatus and method
US5812817A (en) Compression architecture for system memory application
US6324621B2 (en) Data caching with a partially compressed cache
GB2391963B (en) Method and apparatus for preloading caches
US5649156A (en) Cache management system utilizing a cache data replacer responsive to cache stress threshold value and the period of time a data element remains in cache
US7096321B2 (en) Method and system for a cache replacement technique with adaptive skipping
US7487320B2 (en) Apparatus and system for dynamically allocating main memory among a plurality of applications
US6745295B2 (en) Designing a cache with adaptive reconfiguration
US5577224A (en) Method and system for caching data
US5257370A (en) Method and system for optimizing data caching in a disk-based computer system
Zdonik et al. Are “disks in the air” just pie in the sky?
WO2004029812A3 (en) Computer system with processor cache that stores remote cache presence information
US20030105926A1 (en) Variable size prefetch cache
WO2002054230A3 (en) System and method for prefetching data into a cache based on miss distance
WO2004111881A1 (en) System and method for utilizing compression in database caches to facilitate access to database information
US5544349A (en) Method and system for improving the performance of memory in constrained virtual memory environments by reducing paging activity
WO1999059070A3 (en) Data processing circuit with cache memory
US7020748B2 (en) Cache replacement policy to mitigate pollution in multicore processors
CA2218155A1 (en) Time coherent caching system
GB2529035A (en) Invalidation data area for cache
WO2002019114A3 (en) Multi-tier caching system
EP0817080A3 (en) Multi-level cache memory
US5761716A (en) Rate based memory replacement mechanism for replacing cache entries when the cache is full
CN111222004A (en) Audio playing method, terminal equipment and vehicle

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): JP

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
AK Designated states

Kind code of ref document: A3

Designated state(s): JP

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 1999921940

Country of ref document: EP

ENP Entry into the national phase

Ref country code: JP

Ref document number: 2000 550099

Kind code of ref document: A

Format of ref document f/p: F

WWP Wipo information: published in national office

Ref document number: 1999921940

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 1999921940

Country of ref document: EP