WO2004031964A3 - Method and apparatus for reducing overhead in a data processing system with a cache - Google Patents

Method and apparatus for reducing overhead in a data processing system with a cache Download PDF

Info

Publication number
WO2004031964A3
WO2004031964A3 PCT/US2003/028934 US0328934W WO2004031964A3 WO 2004031964 A3 WO2004031964 A3 WO 2004031964A3 US 0328934 W US0328934 W US 0328934W WO 2004031964 A3 WO2004031964 A3 WO 2004031964A3
Authority
WO
WIPO (PCT)
Prior art keywords
data
cache
allocates
cache line
data processing
Prior art date
Application number
PCT/US2003/028934
Other languages
French (fr)
Other versions
WO2004031964A2 (en
Inventor
Patrick Conway
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Priority to JP2004541549A priority Critical patent/JP4559861B2/en
Priority to EP03749675A priority patent/EP1546887A2/en
Priority to AU2003267204A priority patent/AU2003267204A1/en
Publication of WO2004031964A2 publication Critical patent/WO2004031964A2/en
Publication of WO2004031964A3 publication Critical patent/WO2004031964A3/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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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/126Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning

Abstract

A data processor (120) recognizes a special data processing operation in which data will be stored in a cache (124) for one use only. The data processor (120) allocates a memory location to at least one cache line of the cache (124). A data producer such as a data communication driver program running on a central processing unit (122) then writes a data element to the allocated memory location. A data consumer (160) reads the data element by sending a READ ONCE request to a host bridge (130). The host bridge (130) provides the READ ONCE request to a memory controller (126), which reads the data from the cache (124) and de-allocates the at least one cache line without performing a writeback from the cache to a main memory (170). In one form the memory controller (126) de-allocates the at least one cache line by issuing a probe marking the next state of the associated cache line as invalid.
PCT/US2003/028934 2002-09-30 2003-09-18 Method and apparatus for reducing overhead in a data processing system with a cache WO2004031964A2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2004541549A JP4559861B2 (en) 2002-09-30 2003-09-18 Method and apparatus for reducing overhead of a data processing system with a cache
EP03749675A EP1546887A2 (en) 2002-09-30 2003-09-18 Method and apparatus for reducing overhead in a data processing system with a cache
AU2003267204A AU2003267204A1 (en) 2002-09-30 2003-09-18 Method and apparatus for reducing overhead in a data processing system with a cache

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/261,642 US7062610B2 (en) 2002-09-30 2002-09-30 Method and apparatus for reducing overhead in a data processing system with a cache
US10/261,642 2002-09-30

Publications (2)

Publication Number Publication Date
WO2004031964A2 WO2004031964A2 (en) 2004-04-15
WO2004031964A3 true WO2004031964A3 (en) 2004-10-28

Family

ID=32030034

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2003/028934 WO2004031964A2 (en) 2002-09-30 2003-09-18 Method and apparatus for reducing overhead in a data processing system with a cache

Country Status (8)

Country Link
US (1) US7062610B2 (en)
EP (1) EP1546887A2 (en)
JP (1) JP4559861B2 (en)
KR (1) KR101069931B1 (en)
CN (1) CN100357915C (en)
AU (1) AU2003267204A1 (en)
TW (1) TWI322944B (en)
WO (1) WO2004031964A2 (en)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040019704A1 (en) * 2002-05-15 2004-01-29 Barton Sano Multiple processor integrated circuit having configurable packet-based interfaces
US7155572B2 (en) * 2003-01-27 2006-12-26 Advanced Micro Devices, Inc. Method and apparatus for injecting write data into a cache
US7334102B1 (en) 2003-05-09 2008-02-19 Advanced Micro Devices, Inc. Apparatus and method for balanced spinlock support in NUMA systems
US20050132089A1 (en) * 2003-12-12 2005-06-16 Octigabay Systems Corporation Directly connected low latency network and interface
US20060143402A1 (en) * 2004-12-23 2006-06-29 Srinivas Chennupaty Mechanism for processing uncacheable streaming data
US7437510B2 (en) * 2005-09-30 2008-10-14 Intel Corporation Instruction-assisted cache management for efficient use of cache and memory
US7571286B2 (en) * 2006-08-24 2009-08-04 International Business Machines Corporation Reduced memory traffic via detection and tracking of temporally silent stores
US20090037661A1 (en) * 2007-08-04 2009-02-05 Applied Micro Circuits Corporation Cache mechanism for managing transient data
US7861041B2 (en) * 2007-09-04 2010-12-28 Advanced Micro Devices, Inc. Second chance replacement mechanism for a highly associative cache memory of a processor
US7873791B1 (en) * 2007-09-28 2011-01-18 Emc Corporation Methods and systems for incorporating improved tail cutting in a prefetch stream in TBC mode for data storage having a cache memory
JP2009157608A (en) * 2007-12-26 2009-07-16 Nec Corp Cache memory system and cache memory control method
GB2456924B (en) * 2008-04-28 2012-03-07 Ibm Method, apparatus, computer program product and data processing program of controlling cache usage in a computer system
US8185695B2 (en) * 2008-06-30 2012-05-22 Advanced Micro Devices, Inc. Snoop filtering mechanism
US8627017B2 (en) * 2008-12-30 2014-01-07 Intel Corporation Read and write monitoring attributes in transactional memory (TM) systems
US9785462B2 (en) 2008-12-30 2017-10-10 Intel Corporation Registering a user-handler in hardware for transactional memory event handling
DE102009026961A1 (en) * 2009-06-16 2010-12-23 Robert Bosch Gmbh Method for transmitting data between subscriber stations of a bus system
US8751714B2 (en) * 2010-09-24 2014-06-10 Intel Corporation Implementing quickpath interconnect protocol over a PCIe interface
US8683135B2 (en) * 2010-10-31 2014-03-25 Apple Inc. Prefetch instruction that ignores a cache hit
KR102118309B1 (en) 2012-09-19 2020-06-03 돌비 레버러토리즈 라이쎈싱 코오포레이션 Quantum dot/remote phosphor display system improvements
TWI526966B (en) 2013-11-25 2016-03-21 財團法人資訊工業策進會 A data processor and a data processing method
US9792210B2 (en) 2015-12-22 2017-10-17 Advanced Micro Devices, Inc. Region probe filter for distributed memory system
US10042762B2 (en) 2016-09-14 2018-08-07 Advanced Micro Devices, Inc. Light-weight cache coherence for data processors with limited data sharing
US10235302B2 (en) * 2016-12-12 2019-03-19 Intel Corporation Invalidating reads for cache utilization in processors
US10402349B2 (en) * 2017-02-08 2019-09-03 Arm Limited Memory controller having data access hint message for specifying the given range of one or more memory addresses
US11036658B2 (en) 2019-01-16 2021-06-15 Advanced Micro Devices, Inc. Light-weight memory expansion in a coherent memory system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4197580A (en) * 1978-06-08 1980-04-08 Bell Telephone Laboratories, Incorporated Data processing system including a cache memory
EP0468786A2 (en) * 1990-07-27 1992-01-29 Dell Usa L.P. Processor which performs memory access in parallel with cache access and method employed thereby
EP0838762A2 (en) * 1992-02-28 1998-04-29 Motorola, Inc. A data processor having a cache memory
US20020087796A1 (en) * 2000-12-29 2002-07-04 Fanning Blaise B. Method and apparatus for optimizing data streaming in a computer system utilizing random access memory in a system logic device

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0354649A (en) * 1989-07-24 1991-03-08 Oki Electric Ind Co Ltd Buffer storage control system
JP2695017B2 (en) * 1989-11-08 1997-12-24 富士通株式会社 Data transfer method
JPH0448358A (en) * 1990-06-18 1992-02-18 Nec Corp Cache memory control system
JPH04195576A (en) * 1990-11-28 1992-07-15 Nec Corp Cache memory system
US5535116A (en) 1993-05-18 1996-07-09 Stanford University Flat cache-only multi-processor architectures
US5553265A (en) 1994-10-21 1996-09-03 International Business Machines Corporation Methods and system for merging data during cache checking and write-back cycles for memory reads and writes
US6101574A (en) 1995-02-16 2000-08-08 Fujitsu Limited Disk control unit for holding track data in non-volatile cache memory
JPH08272687A (en) * 1995-04-03 1996-10-18 Nec Corp Input/output cache memory
JP3889044B2 (en) 1995-05-05 2007-03-07 シリコン、グラフィクス、インコーポレイテッド Page movement in non-uniform memory access (NUMA) systems
US5680576A (en) 1995-05-05 1997-10-21 Silicon Graphics, Inc. Directory-based coherence protocol allowing efficient dropping of clean-exclusive data
JP2976867B2 (en) * 1995-12-07 1999-11-10 日本電気株式会社 I / O buffer device and management method thereof
US5829028A (en) 1996-05-06 1998-10-27 Advanced Micro Devices, Inc. Data cache configured to store data in a use-once manner
US6044438A (en) 1997-07-10 2000-03-28 International Business Machiness Corporation Memory controller for controlling memory accesses across networks in distributed shared memory processing systems
US6223258B1 (en) * 1998-03-31 2001-04-24 Intel Corporation Method and apparatus for implementing non-temporal loads
US6212568B1 (en) * 1998-05-06 2001-04-03 Creare Inc. Ring buffered network bus data management system
US6490654B2 (en) * 1998-07-31 2002-12-03 Hewlett-Packard Company Method and apparatus for replacing cache lines in a cache memory
US6457105B1 (en) * 1999-01-15 2002-09-24 Hewlett-Packard Company System and method for managing data in an asynchronous I/O cache memory
US6442666B1 (en) * 1999-01-28 2002-08-27 Infineon Technologies Ag Techniques for improving memory access in a virtual memory system
US6502171B1 (en) * 1999-08-04 2002-12-31 International Business Machines Corporation Multiprocessor system bus with combined snoop responses explicitly informing snoopers to scarf data
JP3897218B2 (en) * 1999-10-08 2007-03-22 富士通株式会社 Cache apparatus and control method
US6549961B1 (en) * 1999-10-27 2003-04-15 Infineon Technologies North America Corporation Semaphore access in a multiprocessor system
US6751684B2 (en) * 2000-12-21 2004-06-15 Jonathan M. Owen System and method of allocating bandwidth to a plurality of devices interconnected by a plurality of point-to-point communication links
US7100001B2 (en) 2002-01-24 2006-08-29 Intel Corporation Methods and apparatus for cache intervention
US20040022094A1 (en) 2002-02-25 2004-02-05 Sivakumar Radhakrishnan Cache usage for concurrent multiple streams
US6839816B2 (en) 2002-02-26 2005-01-04 International Business Machines Corporation Shared cache line update mechanism
JP2003296189A (en) * 2002-04-02 2003-10-17 Kyocera Corp Data writing method in cache system
US6944719B2 (en) 2002-05-15 2005-09-13 Broadcom Corp. Scalable cache coherent distributed shared memory processing system
US20040019704A1 (en) 2002-05-15 2004-01-29 Barton Sano Multiple processor integrated circuit having configurable packet-based interfaces
US8533401B2 (en) 2002-12-30 2013-09-10 Intel Corporation Implementing direct access caches in coherent multiprocessors

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4197580A (en) * 1978-06-08 1980-04-08 Bell Telephone Laboratories, Incorporated Data processing system including a cache memory
EP0468786A2 (en) * 1990-07-27 1992-01-29 Dell Usa L.P. Processor which performs memory access in parallel with cache access and method employed thereby
EP0838762A2 (en) * 1992-02-28 1998-04-29 Motorola, Inc. A data processor having a cache memory
US20020087796A1 (en) * 2000-12-29 2002-07-04 Fanning Blaise B. Method and apparatus for optimizing data streaming in a computer system utilizing random access memory in a system logic device

Also Published As

Publication number Publication date
AU2003267204A8 (en) 2004-04-23
WO2004031964A2 (en) 2004-04-15
EP1546887A2 (en) 2005-06-29
TW200407709A (en) 2004-05-16
JP2006501568A (en) 2006-01-12
KR20050046814A (en) 2005-05-18
KR101069931B1 (en) 2011-10-05
US20040064651A1 (en) 2004-04-01
JP4559861B2 (en) 2010-10-13
AU2003267204A1 (en) 2004-04-23
CN1685321A (en) 2005-10-19
TWI322944B (en) 2010-04-01
CN100357915C (en) 2007-12-26
US7062610B2 (en) 2006-06-13

Similar Documents

Publication Publication Date Title
WO2004031964A3 (en) Method and apparatus for reducing overhead in a data processing system with a cache
EP1505504A3 (en) Remote copy system
DE60038177D1 (en) PROCESS AND SYSTEM FOR BANKING
WO2007130386A3 (en) Method and apparatus for secure context switching in a system including a processor and cached virtual memory
WO2002073619A3 (en) System latency levelization for read data
IL169265A0 (en) Page descriptors for prefetching and memory management
MXPA02002883A (en) Method and system for instruction of a computer.
TW200502757A (en) Storage virtualization computer system and external controller therefor
TW200627155A (en) Pre-fetch technology by read merge mechanism
ATE475149T1 (en) COMPUTER SYSTEM CONTROL THROUGH INTERFACE
MX2007002367A (en) Method and apparatus for transmitting memory pre-fetch commands on a bus.
WO2003025757A3 (en) Method and apparatus for decoupling tag and data accesses in a cache memory
WO2006038717B1 (en) External data interface in a computer architecture for broadband networks
MY104738A (en) Control of pipeland operation in a microcomputer system employing dynamic bus sizing with 80386 processor and 82385 cache controller.
WO2008144179A8 (en) Method and apparatus for cache transactions in a data processing system
WO2006026017A3 (en) Memory system and method having uni-directional data buses
EP1313025A3 (en) Direct memory access transfer of data and check information to and from a data storage device
EP1187025A3 (en) Cache update method and cache update control system employing non-blocking type cache
EP0379769A3 (en) Write-read/write-pass memory subsystem cycle
WO2003050688A3 (en) System and method for handling device accesses to a memory providing increased memory access security
WO1995003568A3 (en) Write back cache controller method and apparatus for use in a system having a cpu with internal cache memory
KR960015368A (en) Data processing systems
WO2004088461A3 (en) Local emulation of data ram utilizing write-through cache hardware within a cpu module
WO1998030948A3 (en) Apparatus and method for operably connecting a processor cache to a digital signal processor
WO2002027498A3 (en) System and method for identifying and managing streaming-data

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SC SD SE SG SK SL TJ TM TN TR TT TZ UA UG UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2003749675

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 20038232529

Country of ref document: CN

Ref document number: 1020057005444

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2004541549

Country of ref document: JP

WWP Wipo information: published in national office

Ref document number: 1020057005444

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2003749675

Country of ref document: EP