JP2008117388A - キャッシュ及びキャッシュバイパス機能法 - Google Patents
キャッシュ及びキャッシュバイパス機能法 Download PDFInfo
- Publication number
- JP2008117388A JP2008117388A JP2007275122A JP2007275122A JP2008117388A JP 2008117388 A JP2008117388 A JP 2008117388A JP 2007275122 A JP2007275122 A JP 2007275122A JP 2007275122 A JP2007275122 A JP 2007275122A JP 2008117388 A JP2008117388 A JP 2008117388A
- Authority
- JP
- Japan
- Prior art keywords
- cache
- memory
- request
- line
- cache line
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 20
- 230000015654 memory Effects 0.000 claims abstract description 224
- 230000000694 effects Effects 0.000 claims abstract description 20
- 238000012545 processing Methods 0.000 claims abstract description 13
- 230000008878 coupling Effects 0.000 claims description 3
- 238000010168 coupling process Methods 0.000 claims description 3
- 238000005859 coupling reaction Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 abstract description 7
- 238000013461 design Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010926 purge Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0888—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0804—Addressing 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0893—Caches characterised by their organisation or structure
- G06F12/0897—Caches characterised by their organisation or structure with two or more cache hierarchy levels
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
【解決手段】プロセッサ(102)をメインメモリ(106)に動作可能に結合させるためのキャッシュ(104)が提供された。前記キャッシュは、キャッシュメモリ(108)と、該キャッシュメモリに動作可能に結合されたキャッシュコントローラ(110)とを含む。前記キャッシュメモリか又は前記メインメモリに適合されることとなるメモリリクエストを、受け取るよう前記キャッシュコントローラが構成される。追加的には、キャッシュ活動情報を処理することによって、少なくとも1つの前記メモリリクエストが、前記キャッシュメモリをバイパスさせられるように、前記キャッシュコントローラが構成される。
【選択図】図1
Description
104 キャッシュ
106 メインメモリ
108 キャッシュメモリ
110 キャッシュコントローラ
Claims (10)
- プロセッサ(102)をメインメモリ(106)に動作可能に結合させるためのキャッシュ(104)であって、
キャッシュメモリ(108)と、
前記キャッシュメモリ(108)に動作可能に結合されたキャッシュコントローラ(110)であって、該キャッシュメモリ(108)か又は前記メインメモリ(106)に適合されたメモリリクエストを受け取るよう構成された、キャッシュコントローラ
とを備え、
キャッシュ活動情報を処理することによって、前記メモリリクエストのうちの少なくとも1つが、前記キャッシュメモリ(108)をバイパスさせられるように、前記キャッシュコントローラ(110)が更に構成されていることからなる、キャッシュ。 - 前記キャッシュメモリ(108)内に保持されていない、キャッシュラインの読み出しリクエストか又は書き込みリクエストと、前記キャッシュメモリ(108)内に変更されずに保持されている、キャッシュラインの読み出しリクエスト、とのうちの1つを、前記少なくとも1つのメモリリクエストが含むことからなる、請求項1に記載のキャッシュ。
- 前記キャッシュメモリ(108)内の有効で変更されたキャッシュラインのライン書き込みに対する書き込みリクエストと、前記キャッシュメモリ(108)内の有効で変更されていないキャッシュラインに対する書き込みリクエスト、とのうちの1つを、前記少なくとも1つのメモリリクエストが含み、前記キャッシュコントローラ(110)は、前記書き込みリクエストに応答して前記キャッシュメモリ(108)内の前記キャッシュラインを無効にするよう構成されている、請求項1に記載のキャッシュ。
- 前記キャッシュメモリ(108)内に保持されていないキャッシュラインに対する読み出しリクエストを、前記少なくとも1つのメモリリクエストが含み、前記キャッシュコントローラ(110)が、前記読み出しリクエストに応答して、
前記読み出しリクエストを、前記メインメモリ(106)に送り、
前記キャッシュメモリ(108)内のキャッシュライン記憶域を、前記キャッシュラインに割り当て、
前記メインメモリ(106)から前記キャッシュラインを受け取り、
前記キャッシュラインを前記プロセッサ(102)に向けて送り、及び、
前記キャッシュラインが前記キャッシュメモリ(108)内に格納されていないことを指示するために、前記割り当てられたキャッシュライン記憶域に関連付けられたキャッシュタグを更新する
ように構成されていることからなる、請求項1に記載のキャッシュ。 - 前記キャッシュコントローラ(110)が、前記キャッシュメモリ(108)の過負荷状態を検出するか又は予測するよう更に構成されている、請求項1に記載のキャッシュ。
- プロセッサをメインメモリに動作可能に結合させるキャッシュを動作させるための方法(200)であって、
前記キャッシュのキャッシュメモリか又は前記メインメモリに適合されることになるメモリリクエストを受け取り(202)、及び、
前記キャッシュの活動情報を処理することによって、前記メモリリクエストのうちの少なくとも1つが、前記キャッシュメモリをバイパスさせられる(204)
ことを含むことからなる、方法。 - 前記キャッシュメモリ内に保持されていないキャッシュラインの読み出しリクエストか又は書き込みリクエスト(402)と、前記キャッシュメモリ内において変更されずに保持されているキャッシュラインの読み出しリクエスト(406)、とのうちの1つを、前記少なくとも1つのメモリリクエストが含むことからなる、請求項6に記載の方法。
- 前記キャッシュメモリ内の有効で変更されたキャッシュラインのライン書き込みに対する書き込みリクエスト(416)と、前記キャッシュメモリ内の有効で変更されていないキャッシュラインに対する書き込みリクエスト(410)、とのうちの1つを、前記少なくとも1つのメモリリクエストが含み、前記方法が、前記書き込みリクエスト(410、416)に応答して、前記キャッシュメモリ内の前記キャッシュラインを無効にすること(414、420)を更に含むことからなる、請求項6に記載の方法。
- 前記キャッシュメモリ内に保持されていないキャッシュラインに対する読み出しリクエスト(502)を前記少なくとも1つのメモリリクエストが含み、前記方法が、前記読み出しリクエスト(502)に応答して、
前記読み出しリクエストを、前記メインメモリに送り(504)、
前記キャッシュメモリ内のキャッシュライン記憶域を、前記キャッシュラインに割り当て(506)、
前記メインメモリから前記キャッシュラインを受け取り(508)、
前記キャッシュラインを前記プロセッサに向けて送り(510)、及び、
前記キャッシュラインが前記キャッシュメモリ内に格納されていないことを指示するために、前記割り当てられたキャッシュライン記憶域に関連付けられたキャッシュタグを更新する(518)
ことを更に含むことからなる、請求項6に記載の方法。 - 前記キャッシュメモリの過負荷状態を検出することか又は予測することを更に含むことからなる、請求項6に記載の方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/554,827 US8683139B2 (en) | 2006-10-31 | 2006-10-31 | Cache and method for cache bypass functionality |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008117388A true JP2008117388A (ja) | 2008-05-22 |
JP4673353B2 JP4673353B2 (ja) | 2011-04-20 |
Family
ID=39331762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007275122A Active JP4673353B2 (ja) | 2006-10-31 | 2007-10-23 | キャッシュ及びキャッシュバイパス機能法 |
Country Status (2)
Country | Link |
---|---|
US (2) | US8683139B2 (ja) |
JP (1) | JP4673353B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8762647B2 (en) | 2011-06-15 | 2014-06-24 | Kabushiki Kaisha Toshiba | Multicore processor system and multicore processor |
US9098414B2 (en) | 2010-06-25 | 2015-08-04 | Fujitsu Limited | Multi-core processor system, computer product, and control method |
US9613703B2 (en) | 2013-10-25 | 2017-04-04 | Winbond Electronics Corp. | Semiconductor memory device |
Families Citing this family (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8683139B2 (en) | 2006-10-31 | 2014-03-25 | Hewlett-Packard Development Company, L.P. | Cache and method for cache bypass functionality |
US7769955B2 (en) * | 2007-04-27 | 2010-08-03 | Arm Limited | Multiple thread instruction fetch from different cache levels |
US9275003B1 (en) * | 2007-10-02 | 2016-03-01 | Sandia Corporation | NIC atomic operation unit with caching and bandwidth mitigation |
US8892823B2 (en) | 2007-12-28 | 2014-11-18 | Emulex Corporation | Data bus efficiency via cache line usurpation |
EP2350875A1 (en) | 2008-09-19 | 2011-08-03 | Oracle International Corporation | Storage-side storage request management |
US10430338B2 (en) * | 2008-09-19 | 2019-10-01 | Oracle International Corporation | Selectively reading data from cache and primary storage based on whether cache is overloaded |
US8868831B2 (en) | 2009-09-14 | 2014-10-21 | Oracle International Corporation | Caching data between a database server and a storage system |
US8595437B1 (en) * | 2008-11-21 | 2013-11-26 | Nvidia Corporation | Compression status bit cache with deterministic isochronous latency |
US8700862B2 (en) * | 2008-12-03 | 2014-04-15 | Nvidia Corporation | Compression status bit cache and backing store |
KR101840238B1 (ko) * | 2010-03-08 | 2018-03-20 | 휴렛 팩커드 엔터프라이즈 디벨롭먼트 엘피 | 데이터 저장 장치 및 방법 |
CN102622303B (zh) * | 2011-01-30 | 2016-02-17 | 国际商业机器公司 | 一种内存过载控制的方法及装置 |
US8560779B2 (en) * | 2011-05-20 | 2013-10-15 | International Business Machines Corporation | I/O performance of data analytic workloads |
US9298636B1 (en) * | 2011-09-29 | 2016-03-29 | Emc Corporation | Managing data storage |
EP2761466B1 (en) | 2011-09-30 | 2020-08-05 | Intel Corporation | Apparatus and method for implementing a multi-level memory hierarchy |
EP2761472B1 (en) | 2011-09-30 | 2020-04-01 | Intel Corporation | Memory channel that supports near memory and far memory access |
CN103946826B (zh) | 2011-09-30 | 2019-05-31 | 英特尔公司 | 用于在公共存储器通道上实现多级存储器层级的设备和方法 |
CN103946811B (zh) | 2011-09-30 | 2017-08-11 | 英特尔公司 | 用于实现具有不同操作模式的多级存储器分级结构的设备和方法 |
US10592416B2 (en) | 2011-09-30 | 2020-03-17 | Oracle International Corporation | Write-back storage cache based on fast persistent memory |
CN102646073B (zh) | 2012-04-28 | 2015-01-07 | 华为技术有限公司 | 数据处理方法及装置 |
US9645917B2 (en) * | 2012-05-22 | 2017-05-09 | Netapp, Inc. | Specializing I/O access patterns for flash storage |
US9063908B2 (en) | 2012-05-31 | 2015-06-23 | Oracle International Corporation | Rapid recovery from loss of storage device cache |
US9195598B2 (en) | 2012-06-08 | 2015-11-24 | International Business Machines Corporation | Synchronous and asynchronous discard scans based on the type of cache memory |
US9336150B2 (en) * | 2012-06-08 | 2016-05-10 | International Business Machines Corporation | Performing asynchronous discard scans with staging and destaging operations |
WO2014015409A1 (en) * | 2012-07-24 | 2014-01-30 | Institute Of Computer Science Of The Foundation For Research And Technology - Hellas (Ics-Forth) | System and method for implementing ssd-based i/o caches |
US9208099B2 (en) | 2012-08-08 | 2015-12-08 | International Business Machines Corporation | Adjustment of the number of task control blocks allocated for discard scans |
US8972645B2 (en) * | 2012-09-19 | 2015-03-03 | Hewlett-Packard Development Company, L.P. | Request sent to storage device based on moving average |
US9274971B2 (en) * | 2012-11-27 | 2016-03-01 | International Business Machines Corporation | Low latency data exchange |
US9047092B2 (en) * | 2012-12-21 | 2015-06-02 | Arm Limited | Resource management within a load store unit |
US9176892B2 (en) | 2013-01-22 | 2015-11-03 | International Business Machines Corporation | Performing staging or destaging based on the number of waiting discard scans |
US9965397B2 (en) * | 2013-02-26 | 2018-05-08 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Fast read in write-back cached memory |
US10380021B2 (en) | 2013-03-13 | 2019-08-13 | Oracle International Corporation | Rapid recovery from downtime of mirrored storage device |
WO2014143036A1 (en) * | 2013-03-15 | 2014-09-18 | Intel Corporation | Method for pinning data in large cache in multi-level memory system |
US20150113221A1 (en) * | 2013-03-15 | 2015-04-23 | Herbert Hum | Hybrid input/output write operations |
US9798655B2 (en) | 2013-09-20 | 2017-10-24 | Oracle International Corporation | Managing a cache on storage devices supporting compression |
US10229161B2 (en) | 2013-09-20 | 2019-03-12 | Oracle International Corporation | Automatic caching of scan and random access data in computing systems |
US9568986B2 (en) * | 2013-09-25 | 2017-02-14 | International Business Machines Corporation | System-wide power conservation using memory cache |
CN105683930B (zh) * | 2013-10-29 | 2019-05-31 | 上海宝存信息科技有限公司 | 用于数据存储系统的动态缓存方法和系统 |
BR102013031479B1 (pt) * | 2013-12-06 | 2021-08-03 | Smart Modular Technologies Industria De Componentes Eletrônicos Ltda | Sistema adaptativo de memória cache em hardware |
US9811469B2 (en) | 2013-12-16 | 2017-11-07 | Empire Technology Development Llc | Sequential access of cache data |
US9785568B2 (en) | 2014-05-19 | 2017-10-10 | Empire Technology Development Llc | Cache lookup bypass in multi-level cache systems |
US9857864B1 (en) * | 2014-10-29 | 2018-01-02 | Amazon Technologies, Inc. | Systems and methods for reducing power consumption in a memory architecture |
US20160179387A1 (en) * | 2014-12-19 | 2016-06-23 | Jayesh Gaur | Instruction and Logic for Managing Cumulative System Bandwidth through Dynamic Request Partitioning |
US9727463B2 (en) * | 2015-05-22 | 2017-08-08 | Nvidia Corporation | Assymetric coherent caching for heterogeneous computing |
US10261901B2 (en) * | 2015-09-25 | 2019-04-16 | Intel Corporation | Method and apparatus for unneeded block prediction in a computing system having a last level cache and a multi-level system memory |
KR102589298B1 (ko) | 2016-05-11 | 2023-10-13 | 삼성전자주식회사 | 그래픽스 프로세싱 장치 및, 그래픽스 프로세싱 장치에서 캐시 바이패스를 제어하는 방법 |
EP3249541B1 (en) * | 2016-05-27 | 2020-07-08 | NXP USA, Inc. | A data processor |
US10133667B2 (en) | 2016-09-06 | 2018-11-20 | Orcle International Corporation | Efficient data storage and retrieval using a heterogeneous main memory |
CN107870872B (zh) * | 2016-09-23 | 2021-04-02 | 伊姆西Ip控股有限责任公司 | 用于管理高速缓存的方法和设备 |
US10592142B2 (en) * | 2016-09-30 | 2020-03-17 | International Business Machines Corporation | Toggling modal transient memory access state |
US10331573B2 (en) | 2016-11-04 | 2019-06-25 | Oracle International Corporation | Detection of avoidable cache thrashing for OLTP and DW workloads |
US10599578B2 (en) * | 2016-12-13 | 2020-03-24 | Advanced Micro Devices, Inc. | Dynamic cache bypassing |
US10540281B2 (en) * | 2017-01-17 | 2020-01-21 | Arm Limited | Cache allocation based on quality-of-service monitoring |
US10424040B2 (en) * | 2017-04-21 | 2019-09-24 | Intel Corporation | Dynamic allocation of cache based on instantaneous bandwidth consumption at computing devices |
US10803039B2 (en) | 2017-05-26 | 2020-10-13 | Oracle International Corporation | Method for efficient primary key based queries using atomic RDMA reads on cache friendly in-memory hash index |
US10719446B2 (en) | 2017-08-31 | 2020-07-21 | Oracle International Corporation | Directly mapped buffer cache on non-volatile memory |
US10802766B2 (en) | 2017-09-29 | 2020-10-13 | Oracle International Corporation | Database with NVDIMM as persistent storage |
US11086876B2 (en) | 2017-09-29 | 2021-08-10 | Oracle International Corporation | Storing derived summaries on persistent memory of a storage device |
US10956335B2 (en) | 2017-09-29 | 2021-03-23 | Oracle International Corporation | Non-volatile cache access using RDMA |
US10732836B2 (en) | 2017-09-29 | 2020-08-04 | Oracle International Corporation | Remote one-sided persistent writes |
US20190042451A1 (en) * | 2018-02-20 | 2019-02-07 | Intel Corporation | Efficient usage of bandwidth of devices in cache applications |
US10802969B2 (en) * | 2019-02-04 | 2020-10-13 | Arm Limited | Interconnect and method of operation of such an interconnect |
GB2584440B (en) * | 2019-06-03 | 2021-12-08 | Advanced Risc Mach Ltd | Cache arrangement for graphics processing systems |
US11182291B2 (en) | 2020-02-03 | 2021-11-23 | International Business Machines Corporation | Using multi-tiered cache to satisfy input/output requests |
US11526449B2 (en) * | 2020-08-31 | 2022-12-13 | Advanced Micro Devices, Inc. | Limited propagation of unnecessary memory updates |
US11188473B1 (en) * | 2020-10-30 | 2021-11-30 | Micron Technology, Inc. | Cache release command for cache reads in a memory sub-system |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05233450A (ja) * | 1992-02-24 | 1993-09-10 | Hitachi Ltd | キャッシュモード選択方法 |
JPH08137752A (ja) * | 1994-11-04 | 1996-05-31 | Fujitsu Ltd | 情報処理装置 |
US5717894A (en) * | 1994-03-07 | 1998-02-10 | Dell Usa, L.P. | Method and apparatus for reducing write cycle wait states in a non-zero wait state cache system |
US6496902B1 (en) * | 1998-12-31 | 2002-12-17 | Cray Inc. | Vector and scalar data cache for a vector multiprocessor |
WO2005026965A1 (en) * | 2003-09-11 | 2005-03-24 | Intel Corporation | Adaptive cache algorithm for temperature sensitive memory |
JP2006048182A (ja) * | 2004-07-30 | 2006-02-16 | Fujitsu Ltd | 記憶制御装置、ムーブインバッファ制御方法およびプログラム |
Family Cites Families (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4075686A (en) | 1976-12-30 | 1978-02-21 | Honeywell Information Systems Inc. | Input/output cache system including bypass capability |
US4189770A (en) | 1978-03-16 | 1980-02-19 | International Business Machines Corporation | Cache bypass control for operand fetches |
US4268907A (en) | 1979-01-22 | 1981-05-19 | Honeywell Information Systems Inc. | Cache unit bypass apparatus |
US4317168A (en) | 1979-11-23 | 1982-02-23 | International Business Machines Corporation | Cache organization enabling concurrent line castout and line fetch transfers with main storage |
US4484267A (en) * | 1981-12-30 | 1984-11-20 | International Business Machines Corporation | Cache sharing control in a multiprocessor |
US4942518A (en) | 1984-06-20 | 1990-07-17 | Convex Computer Corporation | Cache store bypass for computer |
US4646233A (en) | 1984-06-20 | 1987-02-24 | Weatherford James R | Physical cache unit for computer |
US4851993A (en) | 1987-04-20 | 1989-07-25 | Amdahl Corporation | Cache move-in bypass |
US4888679A (en) | 1988-01-11 | 1989-12-19 | Digital Equipment Corporation | Method and apparatus using a cache and main memory for both vector processing and scalar processing by prefetching cache blocks including vector data elements |
JP2679363B2 (ja) | 1989-06-20 | 1997-11-19 | 日本電気株式会社 | マイクロプロセッサ |
US4998221A (en) | 1989-10-31 | 1991-03-05 | International Business Machines Corporation | Memory by-pass for write through read operations |
EP0442116A3 (en) | 1990-02-13 | 1993-03-03 | Hewlett-Packard Company | Pipeline method and apparatus |
US5265232A (en) | 1991-04-03 | 1993-11-23 | International Business Machines Corporation | Coherence control by data invalidation in selected processor caches without broadcasting to processor caches not having the data |
US5625793A (en) | 1991-04-15 | 1997-04-29 | International Business Machines Corporation | Automatic cache bypass for instructions exhibiting poor cache hit ratio |
US5708784A (en) * | 1991-11-27 | 1998-01-13 | Emc Corporation | Dual bus computer architecture utilizing distributed arbitrators and method of using same |
US5510934A (en) | 1993-12-15 | 1996-04-23 | Silicon Graphics, Inc. | Memory system including local and global caches for storing floating point and integer data |
US5515521A (en) * | 1994-02-08 | 1996-05-07 | Meridian Semiconductor, Inc. | Circuit and method for reducing delays associated with contention interference between code fetches and operand accesses of a microprocessor |
US6161208A (en) | 1994-05-06 | 2000-12-12 | International Business Machines Corporation | Storage subsystem including an error correcting cache and means for performing memory to memory transfers |
US5704058A (en) * | 1995-04-21 | 1997-12-30 | Derrick; John E. | Cache bus snoop protocol for optimized multiprocessor computer system |
US5854943A (en) | 1996-08-07 | 1998-12-29 | Hewlett-Packard Company | Speed efficient cache output selector circuitry based on tag compare and data organization |
US6131155A (en) | 1997-11-07 | 2000-10-10 | Pmc Sierra Ltd. | Programmer-visible uncached load/store unit having burst capability |
US6212603B1 (en) | 1998-04-09 | 2001-04-03 | Institute For The Development Of Emerging Architectures, L.L.C. | Processor with apparatus for tracking prefetch and demand fetch instructions serviced by cache memory |
US6356980B1 (en) * | 1999-11-09 | 2002-03-12 | International Business Machines Corporation | Method and system for bypassing cache levels when casting out from an upper level cache |
US6370618B1 (en) * | 1999-11-09 | 2002-04-09 | International Business Machines Corporation | Method and system for allocating lower level cache entries for data castout from an upper level cache |
US6446145B1 (en) * | 2000-01-06 | 2002-09-03 | International Business Machines Corporation | Computer memory compression abort and bypass mechanism when cache write back buffer is full |
US6347360B1 (en) * | 2000-02-25 | 2002-02-12 | Sun Microsystems, Inc. | Apparatus and method for preventing cache data eviction during an atomic operation |
KR100798020B1 (ko) | 2000-04-12 | 2008-01-24 | 엔엑스피 비 브이 | 데이터 처리 회로, 데이터 처리 회로를 포함하는 장치, 그리고 장치를 위한 컴퓨터 독출 가능 저장 매체 |
US6636949B2 (en) | 2000-06-10 | 2003-10-21 | Hewlett-Packard Development Company, L.P. | System for handling coherence protocol races in a scalable shared memory system based on chip multiprocessing |
US6668308B2 (en) | 2000-06-10 | 2003-12-23 | Hewlett-Packard Development Company, L.P. | Scalable architecture based on single-chip multiprocessing |
US6434673B1 (en) * | 2000-06-30 | 2002-08-13 | Intel Corporation | Optimized configurable scheme for demand based resource sharing of request queues in a cache controller |
US6751705B1 (en) | 2000-08-25 | 2004-06-15 | Silicon Graphics, Inc. | Cache line converter |
US6662273B1 (en) * | 2000-09-29 | 2003-12-09 | Intel Corporation | Least critical used replacement with critical cache |
US20020087798A1 (en) * | 2000-11-15 | 2002-07-04 | Vijayakumar Perincherry | System and method for adaptive data caching |
FR2820850B1 (fr) | 2001-02-15 | 2003-05-09 | Bull Sa | Controleur de coherence pour ensemble multiprocesseur, module et ensemble multiprocesseur a architecture multimodule integrant un tel controleur |
US6662272B2 (en) * | 2001-09-29 | 2003-12-09 | Hewlett-Packard Development Company, L.P. | Dynamic cache partitioning |
US6704844B2 (en) * | 2001-10-16 | 2004-03-09 | International Business Machines Corporation | Dynamic hardware and software performance optimizations for super-coherent SMP systems |
US20030115402A1 (en) | 2001-11-16 | 2003-06-19 | Fredrik Dahlgren | Multiprocessor system |
US6973544B2 (en) | 2002-01-09 | 2005-12-06 | International Business Machines Corporation | Method and apparatus of using global snooping to provide cache coherence to distributed computer nodes in a single coherent system |
US6957305B2 (en) | 2002-08-29 | 2005-10-18 | International Business Machines Corporation | Data streaming mechanism in a microprocessor |
US7467377B2 (en) | 2002-10-22 | 2008-12-16 | Intel Corporation | Methods and apparatus for compiler managed first cache bypassing |
US7107410B2 (en) | 2003-01-07 | 2006-09-12 | Hewlett-Packard Development Company, L.P. | Exclusive status tags |
US7469321B2 (en) | 2003-06-25 | 2008-12-23 | International Business Machines Corporation | Software process migration between coherency regions without cache purges |
US7484043B2 (en) | 2003-06-25 | 2009-01-27 | International Business Machines Corporation | Multiprocessor system with dynamic cache coherency regions |
US7321956B2 (en) | 2004-03-25 | 2008-01-22 | International Business Machines Corporation | Method and apparatus for directory-based coherence with distributed directory management utilizing prefetch caches |
US7363432B2 (en) | 2004-03-25 | 2008-04-22 | International Business Machines Corporation | Method and apparatus for directory-based coherence with distributed directory management |
US7418551B2 (en) * | 2004-07-06 | 2008-08-26 | Intel Corporation | Multi-purpose register cache |
JP4673584B2 (ja) | 2004-07-29 | 2011-04-20 | 富士通株式会社 | キャッシュメモリ装置、演算処理装置及びキャッシュメモリ装置の制御方法 |
US7228388B2 (en) | 2004-11-19 | 2007-06-05 | International Business Machines Corporation | Enabling and disabling cache bypass using predicted cache line usage |
US20060179240A1 (en) | 2005-02-09 | 2006-08-10 | International Business Machines Corporation | System and method for algorithmic cache-bypass |
US7383397B2 (en) | 2005-03-29 | 2008-06-03 | International Business Machines Corporation | Method and apparatus for filtering snoop requests using a scoreboard |
US7596662B2 (en) * | 2006-08-31 | 2009-09-29 | Intel Corporation | Selective storage of data in levels of a cache memory |
US8683139B2 (en) | 2006-10-31 | 2014-03-25 | Hewlett-Packard Development Company, L.P. | Cache and method for cache bypass functionality |
-
2006
- 2006-10-31 US US11/554,827 patent/US8683139B2/en active Active
-
2007
- 2007-10-23 JP JP2007275122A patent/JP4673353B2/ja active Active
-
2014
- 2014-01-28 US US14/165,947 patent/US9405696B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05233450A (ja) * | 1992-02-24 | 1993-09-10 | Hitachi Ltd | キャッシュモード選択方法 |
US5717894A (en) * | 1994-03-07 | 1998-02-10 | Dell Usa, L.P. | Method and apparatus for reducing write cycle wait states in a non-zero wait state cache system |
JPH08137752A (ja) * | 1994-11-04 | 1996-05-31 | Fujitsu Ltd | 情報処理装置 |
US6496902B1 (en) * | 1998-12-31 | 2002-12-17 | Cray Inc. | Vector and scalar data cache for a vector multiprocessor |
WO2005026965A1 (en) * | 2003-09-11 | 2005-03-24 | Intel Corporation | Adaptive cache algorithm for temperature sensitive memory |
JP2006048182A (ja) * | 2004-07-30 | 2006-02-16 | Fujitsu Ltd | 記憶制御装置、ムーブインバッファ制御方法およびプログラム |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9098414B2 (en) | 2010-06-25 | 2015-08-04 | Fujitsu Limited | Multi-core processor system, computer product, and control method |
US8762647B2 (en) | 2011-06-15 | 2014-06-24 | Kabushiki Kaisha Toshiba | Multicore processor system and multicore processor |
US9613703B2 (en) | 2013-10-25 | 2017-04-04 | Winbond Electronics Corp. | Semiconductor memory device |
Also Published As
Publication number | Publication date |
---|---|
US9405696B2 (en) | 2016-08-02 |
US20080104329A1 (en) | 2008-05-01 |
US20140143503A1 (en) | 2014-05-22 |
JP4673353B2 (ja) | 2011-04-20 |
US8683139B2 (en) | 2014-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4673353B2 (ja) | キャッシュ及びキャッシュバイパス機能法 | |
US7234029B2 (en) | Method and apparatus for reducing memory latency in a cache coherent multi-node architecture | |
US8359414B2 (en) | Retry mechanism | |
US8015365B2 (en) | Reducing back invalidation transactions from a snoop filter | |
US5778422A (en) | Data processing system memory controller that selectively caches data associated with write requests | |
US9619390B2 (en) | Proactive prefetch throttling | |
KR102531264B1 (ko) | 오버라이드 가능한 무효화를 갖는 판독 트랜잭션 | |
US20040049641A1 (en) | System and method for controlling prefetching | |
EP1035476A1 (en) | Multiprocessing system employing pending tags to maintain cache coherence | |
US6574710B1 (en) | Computer cache system with deferred invalidation | |
US5559987A (en) | Method and apparatus for updating a duplicate tag status in a snoop bus protocol based computer system | |
US8595443B2 (en) | Varying a data prefetch size based upon data usage | |
CN113853590A (zh) | 伪随机路选择 | |
KR101472967B1 (ko) | 라이트 백 동작을 수행하는 캐시 메모리, 이의 동작 방법, 및 이를 포함하는 시스템 | |
US8332592B2 (en) | Graphics processor with snoop filter | |
US8041898B2 (en) | Method, system and apparatus for reducing memory traffic in a distributed memory system | |
US7797495B1 (en) | Distributed directory cache | |
US6678800B1 (en) | Cache apparatus and control method having writable modified state | |
JP4904802B2 (ja) | キャッシュメモリ及びプロセッサ | |
JP4504134B2 (ja) | システム制御装置、投機フェッチ方法および情報処理装置 | |
US8856444B2 (en) | Data caching method | |
EP3332329B1 (en) | Device and method for prefetching content to a cache memory | |
WO2007110898A1 (ja) | マルチプロセッサシステムおよびマルチプロセッサシステムの動作方法 | |
JP2003015955A (ja) | キャッシュコントローラ及びコンピュータシステム | |
WO2007110914A1 (ja) | マルチプロセッサシステムおよびマルチプロセッサシステムの動作方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100309 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20100609 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20100614 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100907 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20101221 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110120 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4673353 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140128 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |