RU2010144798A - Адаптивная организация кэша для однокристальных мультипроцессоров - Google Patents
Адаптивная организация кэша для однокристальных мультипроцессоров Download PDFInfo
- Publication number
- RU2010144798A RU2010144798A RU2010144798/08A RU2010144798A RU2010144798A RU 2010144798 A RU2010144798 A RU 2010144798A RU 2010144798/08 A RU2010144798/08 A RU 2010144798/08A RU 2010144798 A RU2010144798 A RU 2010144798A RU 2010144798 A RU2010144798 A RU 2010144798A
- Authority
- RU
- Russia
- Prior art keywords
- bank
- data block
- home
- copy
- original
- Prior art date
Links
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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- 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/084—Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/27—Using a specific cache architecture
- G06F2212/271—Non-uniform cache access [NUCA] architecture
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
1. Способ, содержащий: ! вызов блока данных из запоминающего устройства данных посредством первоначального процессорного ядра; ! сохранение первоначальной копии блока данных в банке первоначального аморфного кэша, расположенного рядом с этим первоначальным процессорным ядром; и ! регистрацию первоначальной копии блока данных в директории домашнего банка. ! 2. Способ по п.1, дополнительно содержащий: ! вызов первоначальной копии блока данных из банка первоначального аморфного кэша посредством последующего процессорного ядра; и ! сохранение последующей копии блока данных в банке последующего аморфного кэша, расположенного рядом с этим последующим процессорным ядром; ! регистрацию последующей копии блока данных в директории домашнего банка. ! 3. Способ по п.2, дополнительно содержащий: ! сохранение домашней копии блока данных в банке домашнего аморфного кэша. ! 4. Способ по п.1, дополнительно содержащий: ! смещение первоначальной копии блока данных для более раннего вытеснения из банка персонального аморфного кэша. ! 5. Способ по п.1, дополнительно содержащий: ! вытеснение первоначальной копии блока данных из банка первоначального аморфного кэша; и ! запись первоначальной копии блока данных в банк домашнего аморфного кэша. ! 6. Способ по п.5, дополнительно содержащий: ! смещение первоначальной копии блока данных для более раннего вытеснения из банка домашнего аморфного кэша. ! 7. Способ по п.1, отличающийся тем, что директорий домашнего банка является частью банка домашнего аморфного кэша и имеет больше блоков, доступных для листинга, чем банк домашнего аморфного кэша содержит блоков данных. ! 8. Первоначальная яче�
Claims (20)
1. Способ, содержащий:
вызов блока данных из запоминающего устройства данных посредством первоначального процессорного ядра;
сохранение первоначальной копии блока данных в банке первоначального аморфного кэша, расположенного рядом с этим первоначальным процессорным ядром; и
регистрацию первоначальной копии блока данных в директории домашнего банка.
2. Способ по п.1, дополнительно содержащий:
вызов первоначальной копии блока данных из банка первоначального аморфного кэша посредством последующего процессорного ядра; и
сохранение последующей копии блока данных в банке последующего аморфного кэша, расположенного рядом с этим последующим процессорным ядром;
регистрацию последующей копии блока данных в директории домашнего банка.
3. Способ по п.2, дополнительно содержащий:
сохранение домашней копии блока данных в банке домашнего аморфного кэша.
4. Способ по п.1, дополнительно содержащий:
смещение первоначальной копии блока данных для более раннего вытеснения из банка персонального аморфного кэша.
5. Способ по п.1, дополнительно содержащий:
вытеснение первоначальной копии блока данных из банка первоначального аморфного кэша; и
запись первоначальной копии блока данных в банк домашнего аморфного кэша.
6. Способ по п.5, дополнительно содержащий:
смещение первоначальной копии блока данных для более раннего вытеснения из банка домашнего аморфного кэша.
7. Способ по п.1, отличающийся тем, что директорий домашнего банка является частью банка домашнего аморфного кэша и имеет больше блоков, доступных для листинга, чем банк домашнего аморфного кэша содержит блоков данных.
8. Первоначальная ячейка однокристального мультипроцессора, содержащая:
первоначальное процессорное ядро для вызова блока данных из запоминающего устройства данных; и
первоначальный банк аморфного кэша, расположенный рядом с первоначальным процессорным ядром, для сохранения первоначальной копии блока данных, зарегистрированной в директории домашнего банка.
9. Первоначальная ячейка однокристального мультипроцессора по п.8, отличающаяся тем, что последующее процессорное ядро вызывает первоначальную копию блока данных из банка первоначального аморфного кэша, а банк последующего аморфного кэша, расположенный рядом с последующим процессорным ядром, сохраняет последующую копию блока данных, зарегистрированную в директории домашнего банка.
10. Первоначальная ячейка однокристального мультипроцессора по п.9, отличающаяся тем, что домашний банк аморфного кэша сохраняет домашнюю копию блока данных.
11. Первоначальная ячейка однокристального мультипроцессора по п.8, отличающаяся тем, что первоначальная копия блока данных смещена для более раннего вытеснения из банка первоначального аморфного кэша.
12. Первоначальная ячейка однокристального мультипроцессора по п.8, отличающаяся тем, что первоначальную копию блока данных вытесняют из банка первоначального аморфного кэша и записывают в банке домашнего аморфного кэша.
13. Первоначальная ячейка однокристального мультипроцессора по п.12, отличающаяся тем, что первоначальная копия блока данных смещена для более раннего вытеснения из банка домашнего аморфного кэша.
14. Однокристальный мультипроцессор, содержащий:
первоначальное процессорное ядро для вызова блока данных из запоминающего устройства данных;
первоначальный банк аморфного кэша, расположенный рядом с первоначальным процессорным ядром для сохранения первоначальной копии блока данных;
директорий домашнего банка для регистрации первоначальной копии блока данных.
15. Однокристальный мультипроцессор по п.14, дополнительно содержащий:
последующее процессорное ядро для вызова первоначальной копии блока данных из банка первоначального аморфного кэша; и
банк последующего аморфного кэша, расположенный рядом с последующим процессорным ядром, для сохранения последующей копии блока данных, зарегистрированной в директории домашнего банка.
16. Однокристальный мультипроцессор по п.15, дополнительно содержащий:
домашний банк аморфного кэша для сохранения домашней копии блока данных.
17. Однокристальный мультипроцессор по п.14, отличающийся тем, что первоначальная копия блока данных смещена для более раннего вытеснения из банка первоначального аморфного кэша.
18. Однокристальный мультипроцессор по п.14, отличающийся тем, что первоначальную копию блока данных вытесняют из банка первоначального аморфного кэша и записывают в банке домашнего аморфного кэша.
19. Однокристальный мультипроцессор по п.18, отличающийся тем, что первоначальная копия блока данных смещена для более раннего вытеснения из банка домашнего аморфного кэша.
20. Однокристальный мультипроцессор по п.14, отличающийся тем, что директорий домашнего банка является частью банка домашнего аморфного кэша и имеет больше блоков, доступных для листинга, чем банк домашнего аморфного кэша содержит блоков данных.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/061,027 | 2008-04-02 | ||
US12/061,027 US20090254712A1 (en) | 2008-04-02 | 2008-04-02 | Adaptive cache organization for chip multiprocessors |
PCT/US2009/038886 WO2009146027A1 (en) | 2008-04-02 | 2009-03-31 | Adaptive cache organization for chip multiprocessors |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2010144798A true RU2010144798A (ru) | 2012-05-10 |
RU2484520C2 RU2484520C2 (ru) | 2013-06-10 |
Family
ID=41134309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2010144798/08A RU2484520C2 (ru) | 2008-04-02 | 2009-03-31 | Адаптивная организация кэша для однокристальных мультипроцессоров |
Country Status (3)
Country | Link |
---|---|
US (1) | US20090254712A1 (ru) |
CN (1) | CN101587457B (ru) |
RU (1) | RU2484520C2 (ru) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8990506B2 (en) * | 2009-12-16 | 2015-03-24 | Intel Corporation | Replacing cache lines in a cache memory based at least in part on cache coherency state information |
WO2014042649A1 (en) * | 2012-09-14 | 2014-03-20 | Empire Technology Development, Llc | Cache coherence directory in multi-processor architectures |
CN104995609B (zh) * | 2013-02-11 | 2017-12-19 | 英派尔科技开发有限公司 | 对发向目录的缓存回收通知的聚合 |
US9298620B2 (en) * | 2013-11-25 | 2016-03-29 | Apple Inc. | Selective victimization in a multi-level cache hierarchy |
US10621090B2 (en) * | 2017-01-12 | 2020-04-14 | International Business Machines Corporation | Facility for extending exclusive hold of a cache line in private cache |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6098152A (en) * | 1997-10-17 | 2000-08-01 | International Business Machines Corporation | Method and apparatus for miss sequence cache block replacement utilizing a most recently used state |
US6009488A (en) * | 1997-11-07 | 1999-12-28 | Microlinc, Llc | Computer having packet-based interconnect channel |
US6405290B1 (en) * | 1999-06-24 | 2002-06-11 | International Business Machines Corporation | Multiprocessor system bus protocol for O state memory-consistent data |
US6338116B1 (en) * | 1999-11-09 | 2002-01-08 | International Business Machines Corporation | Method and apparatus for a data-less write operation within a cache memory hierarchy for a data processing system |
US6782463B2 (en) * | 2001-09-14 | 2004-08-24 | Intel Corporation | Shared memory array |
RU2238584C2 (ru) * | 2002-07-31 | 2004-10-20 | Муратшин Борис Фрилевич | Способ организации персистентной кэш памяти для многозадачных, в том числе симметричных многопроцессорных компьютерных систем и устройство для его осуществления |
US7114042B2 (en) * | 2003-05-22 | 2006-09-26 | International Business Machines Corporation | Method to provide atomic update primitives in an asymmetric heterogeneous multiprocessor environment |
US7089361B2 (en) * | 2003-08-07 | 2006-08-08 | International Business Machines Corporation | Dynamic allocation of shared cache directory for optimizing performance |
US7434008B2 (en) * | 2004-04-23 | 2008-10-07 | Hewlett-Packard Development Company, L.P. | System and method for coherency filtering |
US7558920B2 (en) * | 2004-06-30 | 2009-07-07 | Intel Corporation | Apparatus and method for partitioning a shared cache of a chip multi-processor |
US20060282620A1 (en) * | 2005-06-14 | 2006-12-14 | Sujatha Kashyap | Weighted LRU for associative caches |
US20070143546A1 (en) * | 2005-12-21 | 2007-06-21 | Intel Corporation | Partitioned shared cache |
US7571285B2 (en) * | 2006-07-21 | 2009-08-04 | Intel Corporation | Data classification in shared cache of multiple-core processor |
US7899994B2 (en) * | 2006-08-14 | 2011-03-01 | Intel Corporation | Providing quality of service (QoS) for cache architectures using priority information |
US7949794B2 (en) * | 2006-11-02 | 2011-05-24 | Intel Corporation | PCI express enhancements and extensions |
US7710777B1 (en) * | 2006-12-20 | 2010-05-04 | Marvell International Ltd. | Semi-volatile NAND flash memory |
US7649764B2 (en) * | 2007-01-04 | 2010-01-19 | Freescale Semiconductor, Inc. | Memory with shared write bit line(s) |
US7472226B1 (en) * | 2008-03-20 | 2008-12-30 | International Business Machines Corporation | Methods involving memory caches |
-
2008
- 2008-04-02 US US12/061,027 patent/US20090254712A1/en not_active Abandoned
-
2009
- 2009-03-31 RU RU2010144798/08A patent/RU2484520C2/ru not_active IP Right Cessation
- 2009-04-02 CN CN200910149735XA patent/CN101587457B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN101587457A (zh) | 2009-11-25 |
US20090254712A1 (en) | 2009-10-08 |
CN101587457B (zh) | 2013-03-13 |
RU2484520C2 (ru) | 2013-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2010144798A (ru) | Адаптивная организация кэша для однокристальных мультипроцессоров | |
US8949544B2 (en) | Bypassing a cache when handling memory requests | |
US8935484B2 (en) | Write-absorbing buffer for non-volatile memory | |
EP1677198A3 (en) | Distributed cache architecture | |
ATE402444T1 (de) | Verwaltung von mehrprozessor-operationen | |
TW200609726A (en) | Methods and apparatus for providing a software implemented cache memory | |
JP2003216494A5 (ru) | ||
WO2010148803A1 (zh) | 一种提高移动门户网站动态页面访问速度的方法和装置 | |
WO2007027317A3 (en) | System and method of managing telephone calls within a voice over internet protocol telephone system | |
RU2009131695A (ru) | Способ и устройство для установки политики кэширования в процессоре | |
TW200634517A (en) | Utilizing paging to support dynamic code updates | |
CN101593131A (zh) | 基于对象池来实现线程操作的方法和设备 | |
TW200736919A (en) | Directory-based data transfer protocol for multiprocessor system | |
ATE484027T1 (de) | Dynamische cache-speicherung von engine- anweisungen für die auf-bedarf-programmausführung | |
WO2015154387A1 (zh) | 一种处理通话记录信息的方法和装置 | |
CN107800652A (zh) | 在交换机中使用的协议访问方法及装置 | |
CN101609449A (zh) | 一种基于布鲁姆过滤器的数据块快速比较系统 | |
CN204633866U (zh) | 具有骚扰拦截功能的传真机和/或固定电话机 | |
JP2007511850A5 (ru) | ||
CN202401560U (zh) | 带有收纳架的马桶 | |
CN103049478A (zh) | 一种Web服务的双路缓存机制设计方法 | |
CN203040370U (zh) | 多合一宠物箱 | |
Kang et al. | FS-LRU: A page cache algorithm for eliminating fsync write on mobile devices | |
Black-Schaffer | Skewed Caches from a Low-Power Perspective | |
RU2007138794A (ru) | Система сохранения информации и доступа к ней в сети сотовой связи |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20160401 |