CA2088779A1 - Performance d'ordinateur obtenue par simulation d'associativite d'antememoire - Google Patents
Performance d'ordinateur obtenue par simulation d'associativite d'antememoireInfo
- Publication number
- CA2088779A1 CA2088779A1 CA2088779A CA2088779A CA2088779A1 CA 2088779 A1 CA2088779 A1 CA 2088779A1 CA 2088779 A CA2088779 A CA 2088779A CA 2088779 A CA2088779 A CA 2088779A CA 2088779 A1 CA2088779 A1 CA 2088779A1
- Authority
- CA
- Canada
- Prior art keywords
- cache
- addresses
- thrashing
- page
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0864—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1045—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
- G06F12/1054—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache the data cache being concurrently physically addressed
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
- G06F2212/653—Page colouring
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
L'invention est un système informatique utilisant l'adressage en mémoire virtuelle et comportant une antémémoire à correspondance directe qui est exploitée de façon à simuler l'effet d'une antémémoire associative en détectant les ratés et les pages de remise en correspondance dans la mémoire principale de façon que les références mémoire qui auraient causé un emballement puissent coexister dans l'antémémoire. Deux adresses mémoire se trouvant sur des pages différentes, mais en correspondance avec le même emplacement dans l'antémémoire ne peuvent résider simultanément dans l'antémémoire à correspondance directe, de sorte que des renvois à ces deux adresses par une tâche exécutée sur l'unité centrale causeraient un emballement. Toutefois, si l'emplacement de l'une de ces adresses dans la mémoire principale est modifié, les données qui ont ces adresses peuvent coexister dans l'antémémoire et la performance sera sensiblement améliorée parce qu'il n'y aura pas d'emballement. Dans une unité centrale à système d'exploitation à mémoire virtuelle, une page de données ou d'instructions peut être transportée sur un cadre de page physique différent, et conserver la même adresse virtuelle. Ceci se fait simplement en mettant à jour les tables de mise en correspondance des pages avec le nouvel emplacement physique de la page en cause et en copiant les données de l'ancien cadre de page dans le nouveau. La condition d'emballement est détectée et est corrigée dynamiquement en introduisant dans une bascule les adresses des ratés dans l'antémémoire et en échantillonnant périodiquement cette bascule, les pages de remise en correspondance contenant les adresses trouvées au moment de l'échantillonnage. L'antémémoire à correspondance directe doit avoir une capacité suffisante pour recevoir deux pages ou plus.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US71639791A | 1991-06-17 | 1991-06-17 | |
| US716,397 | 1991-06-17 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CA2088779A1 true CA2088779A1 (fr) | 1992-12-18 |
| CA2088779C CA2088779C (fr) | 1998-09-01 |
Family
ID=24877837
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CA002088779A Expired - Fee Related CA2088779C (fr) | 1991-06-17 | 1992-05-21 | Performance d'ordinateur obtenue par simulation d'associativite d'antememoire |
Country Status (12)
| Country | Link |
|---|---|
| US (1) | US5442571A (fr) |
| EP (1) | EP0543991B1 (fr) |
| JP (1) | JPH07104816B2 (fr) |
| KR (1) | KR960005443B1 (fr) |
| AU (1) | AU658914B2 (fr) |
| CA (1) | CA2088779C (fr) |
| DE (1) | DE69229667T2 (fr) |
| IE (1) | IE921691A1 (fr) |
| IL (1) | IL102001A (fr) |
| MX (1) | MX9202907A (fr) |
| TW (1) | TW219986B (fr) |
| WO (1) | WO1992022867A1 (fr) |
Families Citing this family (24)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR2688612A1 (fr) * | 1992-03-13 | 1993-09-17 | Inst Nat Rech Inf Automat | Dispositif d'antememoire. |
| US5732409A (en) * | 1994-03-21 | 1998-03-24 | Legend Research Limited | Caching disk controller implemented by hardwired logic |
| US6129458A (en) * | 1994-03-23 | 2000-10-10 | At&T Global Information Solutions Company | Cache optimization method |
| US6223255B1 (en) | 1995-02-03 | 2001-04-24 | Lucent Technologies | Microprocessor with an instruction level reconfigurable n-way cache |
| US5845106A (en) * | 1996-01-26 | 1998-12-01 | Advanced Micro Devices, Inc. | Method for simulating cache operation |
| US5752261A (en) * | 1996-11-07 | 1998-05-12 | Ncr Corporation | Method and apparatus for detecting thrashing in a cache memory |
| US6301641B1 (en) * | 1997-02-27 | 2001-10-09 | U.S. Philips Corporation | Method for reducing the frequency of cache misses in a computer |
| KR100231707B1 (ko) * | 1997-08-04 | 2000-01-15 | 정선종 | 통신 장비의 디엠에이 처리 방법 및 그 장치 |
| US6209062B1 (en) * | 1997-11-24 | 2001-03-27 | Intel Corporation | Method for holding cache pages that are not invalidated within normal time duration for a second access or that are likely to be accessed again soon |
| US6446170B1 (en) * | 1999-01-19 | 2002-09-03 | International Business Machines Corporation | Efficient store machine in cache based microprocessor |
| US6408368B1 (en) | 1999-06-15 | 2002-06-18 | Sun Microsystems, Inc. | Operating system page placement to maximize cache data reuse |
| US6366994B1 (en) * | 1999-06-22 | 2002-04-02 | Sun Microsystems, Inc. | Cache aware memory allocation |
| JP2001109661A (ja) | 1999-10-14 | 2001-04-20 | Hitachi Ltd | キャッシュメモリの割当方法及びオペレーティングシステム及びそのオペレーティングシステムを有するコンピュータシステム |
| US6523092B1 (en) * | 2000-09-29 | 2003-02-18 | Intel Corporation | Cache line replacement policy enhancement to avoid memory page thrashing |
| US6947052B2 (en) * | 2001-07-13 | 2005-09-20 | Texas Instruments Incorporated | Visual program memory hierarchy optimization |
| GB2381886B (en) * | 2001-11-07 | 2004-06-23 | Sun Microsystems Inc | Computer system with virtual memory and paging mechanism |
| US7373480B2 (en) * | 2004-11-18 | 2008-05-13 | Sun Microsystems, Inc. | Apparatus and method for determining stack distance of running software for estimating cache miss rates based upon contents of a hash table |
| US7366871B2 (en) | 2004-11-18 | 2008-04-29 | Sun Microsystems, Inc. | Apparatus and method for determining stack distance including spatial locality of running software for estimating cache miss rates based upon contents of a hash table |
| JP2007272691A (ja) * | 2006-03-31 | 2007-10-18 | Fujitsu Ltd | プロセッサ装置およびスラッシング回避方法 |
| US8806461B2 (en) * | 2007-06-21 | 2014-08-12 | Microsoft Corporation | Using memory usage to pinpoint sub-optimal code for gaming systems |
| US9619396B2 (en) * | 2015-03-27 | 2017-04-11 | Intel Corporation | Two level memory full line writes |
| US10310811B2 (en) | 2017-03-31 | 2019-06-04 | Hewlett Packard Enterprise Development Lp | Transitioning a buffer to be accessed exclusively by a driver layer for writing immediate data stream |
| CN111666230B (zh) * | 2020-05-27 | 2023-08-01 | 江苏华创微系统有限公司 | 在组相联tlb中支持巨页的方法 |
| US12271318B2 (en) * | 2020-12-28 | 2025-04-08 | Advanced Micro Devices, Inc. | Method and apparatus for managing a cache directory |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5119290A (en) * | 1987-10-02 | 1992-06-02 | Sun Microsystems, Inc. | Alias address support |
| US5210843A (en) * | 1988-03-25 | 1993-05-11 | Northern Telecom Limited | Pseudo set-associative memory caching arrangement |
| JPH02273843A (ja) * | 1989-04-14 | 1990-11-08 | Nec Corp | スワッピング装置 |
| US5101485B1 (en) * | 1989-06-29 | 1996-12-10 | Frank L Perazzoli Jr | Virtual memory page table paging apparatus and method |
-
1991
- 1991-10-03 TW TW080107803A patent/TW219986B/zh active
-
1992
- 1992-05-21 JP JP5500873A patent/JPH07104816B2/ja not_active Expired - Lifetime
- 1992-05-21 KR KR1019930700415A patent/KR960005443B1/ko not_active Expired - Fee Related
- 1992-05-21 AU AU22474/92A patent/AU658914B2/en not_active Ceased
- 1992-05-21 WO PCT/US1992/004281 patent/WO1992022867A1/fr not_active Ceased
- 1992-05-21 DE DE69229667T patent/DE69229667T2/de not_active Expired - Fee Related
- 1992-05-21 EP EP92914461A patent/EP0543991B1/fr not_active Expired - Lifetime
- 1992-05-21 CA CA002088779A patent/CA2088779C/fr not_active Expired - Fee Related
- 1992-05-26 IL IL10200192A patent/IL102001A/en not_active IP Right Cessation
- 1992-06-16 MX MX9202907A patent/MX9202907A/es not_active IP Right Cessation
- 1992-07-01 IE IE169192A patent/IE921691A1/en not_active Application Discontinuation
-
1994
- 1994-05-27 US US08/250,315 patent/US5442571A/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| AU658914B2 (en) | 1995-05-04 |
| IE921691A1 (en) | 1992-12-30 |
| CA2088779C (fr) | 1998-09-01 |
| TW219986B (fr) | 1994-02-01 |
| IL102001A0 (en) | 1992-12-30 |
| WO1992022867A1 (fr) | 1992-12-23 |
| EP0543991B1 (fr) | 1999-07-28 |
| US5442571A (en) | 1995-08-15 |
| DE69229667T2 (de) | 2000-02-10 |
| AU2247492A (en) | 1993-01-12 |
| JPH05509189A (ja) | 1993-12-16 |
| EP0543991A1 (fr) | 1993-06-02 |
| JPH07104816B2 (ja) | 1995-11-13 |
| KR960005443B1 (ko) | 1996-04-25 |
| MX9202907A (es) | 1993-03-01 |
| IL102001A (en) | 1996-01-31 |
| DE69229667D1 (de) | 1999-09-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CA2088779A1 (fr) | Performance d'ordinateur obtenue par simulation d'associativite d'antememoire | |
| US5630097A (en) | Enhanced cache operation with remapping of pages for optimizing data relocation from addresses causing cache misses | |
| CN1993683B (zh) | 体系结构事件期间维持处理器资源 | |
| US5852738A (en) | Method and apparatus for dynamically controlling address space allocation | |
| BRPI0404015A (pt) | Esvaziamento lento de armazenamentos temporários de pesquisa paralela de tradução | |
| US6304944B1 (en) | Mechanism for storing system level attributes in a translation lookaside buffer | |
| TW376488B (en) | Virtual memory system with local and global virtual address translation | |
| KR900005299A (ko) | 가상계산기 시스템 | |
| US5060137A (en) | Explicit instructions for control of translation lookaside buffers | |
| KR910014814A (ko) | 가상 캐쉬를 이용하는 다중 처리컴퓨터 시스템의 일치성 유지 장치 | |
| JPH0628262A (ja) | ルックアサイドバッファおよび仮想から物理的へアドレスを高速に翻訳する方法 | |
| ATE542179T1 (de) | Mehrstufiges cachespeichersystem | |
| WO2002008905A3 (fr) | Systeme et procede d'emulation d'une operation d'une unite de gestion de memoire et repertoire de pages actives | |
| ATE449374T1 (de) | Ungültigkeitserklärung eines speichers und löschen von puffereinträgen | |
| KR920013135A (ko) | 우선변환참조버퍼에서 적중수를 증가시키기 위한 장치 | |
| CA2107056A1 (fr) | Methode et systeme pour accroitre la simultaneite de fonctionnement des memoires d'un ordinateur a processeurs multiples | |
| US20060236070A1 (en) | System and method for reducing the number of translation buffer invalidates an operating system needs to issue | |
| KR880011674A (ko) | 캐쉬 메모리 장치 | |
| US5619673A (en) | Virtual access cache protection bits handling method and apparatus | |
| US6766435B1 (en) | Processor with a general register set that includes address translation registers | |
| Min et al. | Improving performance of large physically indexed caches by decoupling memory addresses from cache addresses | |
| KR890005614A (ko) | 가상기억 제어 관리 시스템 | |
| KR900018819A (ko) | 캐시 메모리 액세스 장치 및 방법 | |
| JPH0458347A (ja) | 共有アドレス空間管理方式 | |
| EP1426868A3 (fr) | Procédé d'émulation de mémoire associative |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| EEER | Examination request | ||
| MKLA | Lapsed |