CN1777875B - 指令高速缓存管理的方法、高速缓冲存储器以及集成电路 - Google Patents
指令高速缓存管理的方法、高速缓冲存储器以及集成电路 Download PDFInfo
- Publication number
- CN1777875B CN1777875B CN2004800109564A CN200480010956A CN1777875B CN 1777875 B CN1777875 B CN 1777875B CN 2004800109564 A CN2004800109564 A CN 2004800109564A CN 200480010956 A CN200480010956 A CN 200480010956A CN 1777875 B CN1777875 B CN 1777875B
- Authority
- CN
- China
- Prior art keywords
- instruction
- cache
- program flow
- speed cache
- memory
- 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.)
- Expired - Fee Related
Links
- 238000007726 management method Methods 0.000 title description 4
- 230000015654 memory Effects 0.000 claims abstract description 138
- 238000000034 method Methods 0.000 claims description 43
- 238000012217 deletion Methods 0.000 claims description 4
- 230000037430 deletion Effects 0.000 claims description 4
- 238000011156 evaluation Methods 0.000 claims 1
- 238000000638 solvent extraction Methods 0.000 abstract description 2
- 238000012545 processing Methods 0.000 description 13
- 239000000872 buffer Substances 0.000 description 8
- 241001269238 Data Species 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 238000006073 displacement reaction Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000002349 favourable effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 125000002015 acyclic group Chemical group 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004134 energy conservation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005039 memory span Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000002203 pretreatment Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 230000003068 static effect Effects 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/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- 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
-
- 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/0893—Caches characterised by their organisation or structure
- G06F12/0897—Caches characterised by their organisation or structure with two or more cache hierarchy levels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3814—Implementation provisions of instruction buffers, e.g. prefetch buffer; banks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3861—Recovery, e.g. branch miss-prediction, exception handling
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Power Sources (AREA)
Abstract
Description
Claims (31)
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US44887103P | 2003-02-24 | 2003-02-24 | |
US60/448,871 | 2003-02-24 | ||
PCT/IB2004/000455 WO2004075066A2 (en) | 2003-02-24 | 2004-02-23 | Reducing cache trashing of certain pieces |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1777875A CN1777875A (zh) | 2006-05-24 |
CN1777875B true CN1777875B (zh) | 2010-04-28 |
Family
ID=32908665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2004800109564A Expired - Fee Related CN1777875B (zh) | 2003-02-24 | 2004-02-23 | 指令高速缓存管理的方法、高速缓冲存储器以及集成电路 |
Country Status (8)
Country | Link |
---|---|
US (1) | US7353337B2 (zh) |
EP (1) | EP1599803B1 (zh) |
JP (1) | JP2006518896A (zh) |
KR (1) | KR100985239B1 (zh) |
CN (1) | CN1777875B (zh) |
AT (1) | ATE444526T1 (zh) |
DE (1) | DE602004023372D1 (zh) |
WO (1) | WO2004075066A2 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7263587B1 (en) * | 2003-06-27 | 2007-08-28 | Zoran Corporation | Unified memory controller |
KR100735552B1 (ko) | 2005-09-23 | 2007-07-04 | 삼성전자주식회사 | 코드 메모리 상의 프로그램의 코드 크기를 줄이는 방법 |
US7689772B2 (en) * | 2006-05-04 | 2010-03-30 | Intel Corporation | Power-performance modulation in caches using a smart least recently used scheme |
US7747820B2 (en) * | 2007-06-15 | 2010-06-29 | Microsoft Corporation | Managing working set use of a cache via page coloring |
CN101753282B (zh) * | 2008-12-22 | 2013-06-19 | 电信科学技术研究院 | 一种进程缓存的配置和处理的方法及系统 |
FR2962567B1 (fr) * | 2010-07-12 | 2013-04-26 | Bull Sas | Procede d'optimisation d'acces memoire, lors de la reprise d'execution d'une application, dans un microprocesseur comprenant plusieurs coeurs logiques et programme d'ordinateur mettant en oeuvre un tel procede |
US9104532B2 (en) * | 2012-12-14 | 2015-08-11 | International Business Machines Corporation | Sequential location accesses in an active memory device |
US9645942B2 (en) | 2013-03-15 | 2017-05-09 | Intel Corporation | Method for pinning data in large cache in multi-level memory system |
US9558124B2 (en) * | 2013-11-08 | 2017-01-31 | Seagate Technology Llc | Data storage system with passive partitioning in a secondary memory |
JP6259518B2 (ja) * | 2014-01-27 | 2018-01-10 | ヴィア アライアンス セミコンダクター カンパニー リミテッド | オペレーティング・システム・ルーチンのための予測履歴ストレージのフラクショナルな使用 |
US10235203B1 (en) | 2014-03-31 | 2019-03-19 | EMC IP Holding Company LLC | Techniques for increasing storage system performance in processor-bound workloads with large working sets and poor spatial locality |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0442474A2 (en) * | 1990-02-13 | 1991-08-21 | Sanyo Electric Co., Ltd. | Apparatus and method for controlling cache memory |
EP0481616A2 (en) * | 1990-10-15 | 1992-04-22 | International Business Machines Corporation | Dynamic cache partitioning |
EP0856797A1 (en) * | 1997-01-30 | 1998-08-05 | STMicroelectronics Limited | A cache system for concurrent processes |
CN1251668A (zh) * | 1997-12-30 | 2000-04-26 | Mcmz技术革新股份有限公司 | 计算机高速缓存分窗 |
CN1334938A (zh) * | 1998-12-08 | 2002-02-06 | 英特尔公司 | 有多执行实体的系统中的缓冲存储管理 |
US6470423B1 (en) * | 1998-06-22 | 2002-10-22 | Oracle Corporation | Managing partitioned cache |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4463424A (en) * | 1981-02-19 | 1984-07-31 | International Business Machines Corporation | Method for dynamically allocating LRU/MRU managed memory among concurrent sequential processes |
EP0389151A3 (en) * | 1989-03-22 | 1992-06-03 | International Business Machines Corporation | System and method for partitioned cache memory management |
US5394531A (en) * | 1989-04-03 | 1995-02-28 | International Business Machines Corporation | Dynamic storage allocation system for a prioritized cache |
US5537635A (en) * | 1994-04-04 | 1996-07-16 | International Business Machines Corporation | Method and system for assignment of reclaim vectors in a partitioned cache with a virtual minimum partition size |
US5696932A (en) * | 1995-05-16 | 1997-12-09 | International Business Machines Corporation | Method and system for estimating minumun requirements on a cache in a computer based storage system |
US5893920A (en) * | 1996-09-30 | 1999-04-13 | International Business Machines Corporation | System and method for cache management in mobile user file systems |
GB9701960D0 (en) * | 1997-01-30 | 1997-03-19 | Sgs Thomson Microelectronics | A cache system |
US6898694B2 (en) * | 2001-06-28 | 2005-05-24 | Intel Corporation | High instruction fetch bandwidth in multithread processor using temporary instruction cache to deliver portion of cache line in subsequent clock cycle |
-
2004
- 2004-02-23 US US10/546,757 patent/US7353337B2/en active Active
- 2004-02-23 DE DE602004023372T patent/DE602004023372D1/de not_active Expired - Lifetime
- 2004-02-23 CN CN2004800109564A patent/CN1777875B/zh not_active Expired - Fee Related
- 2004-02-23 EP EP04713597A patent/EP1599803B1/en not_active Expired - Lifetime
- 2004-02-23 AT AT04713597T patent/ATE444526T1/de not_active IP Right Cessation
- 2004-02-23 JP JP2006502458A patent/JP2006518896A/ja active Pending
- 2004-02-23 WO PCT/IB2004/000455 patent/WO2004075066A2/en active Application Filing
- 2004-02-23 KR KR1020057015715A patent/KR100985239B1/ko not_active IP Right Cessation
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0442474A2 (en) * | 1990-02-13 | 1991-08-21 | Sanyo Electric Co., Ltd. | Apparatus and method for controlling cache memory |
EP0481616A2 (en) * | 1990-10-15 | 1992-04-22 | International Business Machines Corporation | Dynamic cache partitioning |
EP0856797A1 (en) * | 1997-01-30 | 1998-08-05 | STMicroelectronics Limited | A cache system for concurrent processes |
CN1251668A (zh) * | 1997-12-30 | 2000-04-26 | Mcmz技术革新股份有限公司 | 计算机高速缓存分窗 |
US6470423B1 (en) * | 1998-06-22 | 2002-10-22 | Oracle Corporation | Managing partitioned cache |
CN1334938A (zh) * | 1998-12-08 | 2002-02-06 | 英特尔公司 | 有多执行实体的系统中的缓冲存储管理 |
Also Published As
Publication number | Publication date |
---|---|
DE602004023372D1 (de) | 2009-11-12 |
ATE444526T1 (de) | 2009-10-15 |
US20060179225A1 (en) | 2006-08-10 |
KR20050115875A (ko) | 2005-12-08 |
JP2006518896A (ja) | 2006-08-17 |
EP1599803A2 (en) | 2005-11-30 |
EP1599803B1 (en) | 2009-09-30 |
WO2004075066A2 (en) | 2004-09-02 |
WO2004075066A8 (en) | 2005-04-07 |
CN1777875A (zh) | 2006-05-24 |
US7353337B2 (en) | 2008-04-01 |
KR100985239B1 (ko) | 2010-10-04 |
WO2004075066A3 (en) | 2004-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5838945A (en) | Tunable software control of harvard architecture cache memories using prefetch instructions | |
US5872985A (en) | Switching multi-context processor and method overcoming pipeline vacancies | |
US5796971A (en) | Method for generating prefetch instruction with a field specifying type of information and location for it such as an instruction cache or data cache | |
EP0747816B1 (en) | Method and system for high performance multithread operation in a data processing system | |
JP3820261B2 (ja) | データ処理システムの外部および内部命令セット | |
US5442760A (en) | Decoded instruction cache architecture with each instruction field in multiple-instruction cache line directly connected to specific functional unit | |
CN100541423C (zh) | 在推测性处理器中减少执行涉及不可靠数据的指令的系统与方法 | |
US5829025A (en) | Computer system and method of allocating cache memories in a multilevel cache hierarchy utilizing a locality hint within an instruction | |
KR101626533B1 (ko) | 가비지 콜렉션을 위한 gpu 서포트 | |
US6470424B1 (en) | Pin management of accelerator for interpretive environments | |
US20070204107A1 (en) | Cache memory background preprocessing | |
JPH08194615A (ja) | 情報処理装置 | |
JPH0612386A (ja) | プロセス内のスレッドを同期するための方法およびシステム | |
CN1777875B (zh) | 指令高速缓存管理的方法、高速缓冲存储器以及集成电路 | |
KR101639943B1 (ko) | 범용 그래픽 프로세서의 공유 메모리를 캐시로 동작시키기 위한 공유 메모리 제어 방법 및 이를 이용한 범용 그래픽 프로세서 | |
JP3681647B2 (ja) | キャッシュメモリシステム装置 | |
US20110113411A1 (en) | Program optimization method | |
CN1196997C (zh) | 不按序执行指令的装置和检测不按序指令的方法 | |
US7260674B2 (en) | Programmable parallel lookup memory | |
US6560676B1 (en) | Cache memory system having a replace way limitation circuit and a processor | |
US20090276575A1 (en) | Information processing apparatus and compiling method | |
US8510529B2 (en) | Method for generating program and method for operating system | |
US5572700A (en) | Cache access controller and method for permitting caching of information in selected cache lines | |
US7058938B2 (en) | Method and system for scheduling software pipelined loops | |
JPH08161169A (ja) | Vliw方式の計算機システム及びvliwの解釈・実行方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20090206 Address after: Holland Ian Deho Finn Applicant after: Koninkl Philips Electronics NV Address before: Holland Ian Deho Finn Applicant before: Koninklijke Philips Electronics N.V. |
|
ASS | Succession or assignment of patent right |
Owner name: NXP CO., LTD. Free format text: FORMER OWNER: KONINKLIJKE PHILIPS ELECTRONICS N.V. Effective date: 20090206 |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
ASS | Succession or assignment of patent right |
Owner name: NITAI SOFTWARE CO., LTD. Free format text: FORMER OWNER: KONINKL PHILIPS ELECTRONICS NV Effective date: 20120321 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20120321 Address after: Delaware Patentee after: Nytell Software LLC Address before: Holland Ian Deho Finn Patentee before: Koninkl Philips Electronics NV |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100428 Termination date: 20160223 |
|
CF01 | Termination of patent right due to non-payment of annual fee |