JP2008016033A - 階層テーブルを管理するための方法およびコンピュータ・システム - Google Patents
階層テーブルを管理するための方法およびコンピュータ・システム Download PDFInfo
- Publication number
- JP2008016033A JP2008016033A JP2007176456A JP2007176456A JP2008016033A JP 2008016033 A JP2008016033 A JP 2008016033A JP 2007176456 A JP2007176456 A JP 2007176456A JP 2007176456 A JP2007176456 A JP 2007176456A JP 2008016033 A JP2008016033 A JP 2008016033A
- Authority
- JP
- Japan
- Prior art keywords
- entry
- index
- entries
- level table
- high level
- 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
Images
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/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 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/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
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
Description
なお、以下でIBMはインターナショナル・ビジネス・マシーンズ・コーポレーションの登録商標である。ここで使用される他の名称も同社または他の会社の登録商標、商標または製品名であり得る。
1.現在 − 現在インデックス・セットはH中のエントリにより現在使用されているものである。
2.ダーティ − ダーティ・インデックス・セットは使用中でないものであり、かつ有効なビット・セットを有するL中のエントリをそれに関連付けてしまっているかも知れないものである。
3.クリーン − クリーン・インデックス・セットは使用中でないものであり、かつ有効なビット・セットを有するL中のどのエントリもそれに関連づけていないものである。
インデックス・ビットの数は、インデックス・セット・ビットの数と同様、スクラビングの頻度および効率、テーブルのアクティビティ・レートを含む多くの要素に依存しがちである。いずれかのフィールドを1ビットだけ増やすと、親および子の両方のエントリが1ビットだけ大きくなるという負担を伴いながらも、スクラビング相互間に要する時間量が倍になる(平均で)。更に、インデックス・セット・フィールドを1ビットだけ増やすと、(ダーティなインデックス・セットを管理するために)親のエントリを追加ビット分、大きくするが、スクラビング・プロセスのより多くの粒度(きめ細かさ)を許容し、もっと効果的なスクラビングを生じることができる。
一例として、本発明の一つ又は複数の特徴は、例えば一つ若しくはそれ以上のコンピュータ・プログラムやコンピュータ使用可能媒体で実現することができる。この媒体は、例えば本発明の機能を提供するためのコンピュータ読み取り可能なプログラム・コード手段を含んでいる。本発明のプログラムはコンピュータ・システムの一部として含まれていてもよいし、別個に販売されてもよい。
Claims (13)
- アレイの階層テーブルを管理する方法であって、
値を持つエントリを含み、高レベル・テーブルおよび少なくとも一つの低レベル・テーブルを含む階層テーブル中の前記エントリのコヒーレンシーを維持するために、現在インデックス、ダーティ・インデックス、クリーン・インデックスを含む前記エントリのための複数のインデックス値を有するバッファを備えた前記高レベル・テーブル中の一つのエントリに、前記低レベル・テーブル中の複数のエントリをリンクした前記階層テーブルのアレイを維持することと、
高レベルのエントリが置き換えられ若しくは無効化されるごとにインデックス値をインクリメントすることと、
を含む方法。 - 前記インデックス値は複数のセット分が維持され、一つのセットを使い切ると、前記複数のセットのうちの他の一つのセットで以って処理を続行する、請求項1に記載の方法。
- 高レベルのエントリを有することで、その対応する低レベルのエントリの全てに共通の情報を共有することができるようにバッファされたインデックスを備えた高レベル・テーブル中の単一のエントリに、前記複数のエントリが低レベル・テーブルにおいてリンクされる、請求項1に記載の方法。
- 前記高レベル・テーブルが親のエントリを含み、前記低レベル・テーブルが子のエントリを含み、そして高レベルの親のエントリを有することで、その対応する低レベルの子のエントリの全てに共通の情報を共有することができるようにバッファされたインデックスを備えた高レベル・テーブル中の単一のエントリに、前記複数のエントリが低レベル・テーブルにおいてリンクされる、請求項1に記載の方法。
- 階層レベルのエントリが置き換えられ若しくは無効化されるごとにインデックス値がインクリメントする、請求項1に記載の方法。
- 一つのセットを使い切ると、前記複数のセットのうちの他の一つのセットで以って処理を続行するように、複数のセットの前記インデックス値が維持される、請求項5に記載の方法。
- 前記インデックス値のセットは、新しいエントリが新しいセットから構築されている間に、古いダーティなセットからのインデックス値を備えた、対応する低レベルのエントリが、スクラブされ無効化されるのを許容する、請求項6に記載の方法。
- テーブルの新しいリクエストが到来すると、バックグラウンド無効化としてスクラビングもしくは無効化が生じる、請求項7に記載の方法。
- アレイの新しいリクエストが到来すると、前記子のエントリのスクラビングもしくは無効化を中断した後にバックグラウンド無効化が生じ、前記子のエントリの前記新しいリクエストが満たされた後に、スクラビングもしくは無効化が再開する、請求項4に記載の方法。
- 前記バッファ中のインデックス値を備えた高レベル・テーブル中の単一のエントリに、低レベル・テーブル中の複数のエントリをリンクすることを用い、
前記インデックス値は、高レベルのエントリが置き替えられもしくは無効化され、かつその対応する低レベル・エントリのインデックス値のセットと切り離されるごとにインクリメントし、
一つのセットを使い切ったときに前記他のセットのうちの一つのセットで以って処理を続行することができ、
新しいエントリが新しいクリーン・セットから構築される間に、古いダーティなセットからのインデックス値を備えた全ての対応する低レベルのエントリがスクラブされ無効化されることができ、
前記スクラビングは前記高レベル・テーブル中の新しいエントリに前記低レベル・テーブル中の古いエントリを関連させるのを防止する、請求項1に記載の方法。 - 前記スクラビングは、前記バックグラウンドでかつ前記テーブルのリクエストを処理する間に行うことができ、中断することができ、そして前記テーブルのリクエスト・サービス期間に悪影響を与えることなく任意の時間に再開することができる、請求項10に記載の方法。
- 記憶システムおよびマイクロプロセッサを含むコンピュータ・システムであって、
値を持つエントリの階層テーブルを含む階層記憶エレメントのアレイを有するキャッシュ・アレイを含み、
前記階層テーブルが、前記エントリを含む高レベル・テーブルと少なくとも一つの低レベル・テーブルとを有し、
前記階層テーブルが、現在インデックス、ダーティ・インデックス、クリーン・インデックスを含む前記エントリのための複数のインデックス値を有するバッファを備えた前記高レベル・テーブル中の一つのエントリに、前記低レベル・テーブル中の複数のエントリをリンクし、かつ
高レベルのエントリが置き換えられ若しくは無効化されるごとにインデックス値をインクリメントする、
コンピュータ・システム。 - 前記キャッシュ・アレイがインデックス・セット管理のためのバッファを有し、前記インデックス・セットが
高レベル・エントリにより現在使用されているセットであることを表す現在インデックス・セットと、
使用中でなく、かつ有効なビット・セットを有する低レベル・テーブル中のエントリを関連付けてしまっているかも知れないセットであることを表すダーティ・インデックス・セットと、
使用中でなく、かつ有効なビット・セットを有する低レベル・テーブル中のどのエントリも関連づけていないセットであることを表すクリーン・インデックス・セットと、
を含む、請求項12に記載のコンピュータ・システム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US11/428,858 US7401185B2 (en) | 2006-07-06 | 2006-07-06 | Buffered indexing to manage hierarchical tables |
| US11/428,858 | 2006-07-06 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2008016033A true JP2008016033A (ja) | 2008-01-24 |
| JP5232413B2 JP5232413B2 (ja) | 2013-07-10 |
Family
ID=38920318
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2007176456A Expired - Fee Related JP5232413B2 (ja) | 2006-07-06 | 2007-07-04 | 階層テーブルを管理するための方法およびコンピュータ・システム |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US7401185B2 (ja) |
| JP (1) | JP5232413B2 (ja) |
| CN (1) | CN101101574B (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008077650A (ja) * | 2006-09-19 | 2008-04-03 | Internatl Business Mach Corp <Ibm> | キャストアウトに関する改良されたコヒーレンシ管理を支援するプロセッサ、データ処理システム、およびデータ処理方法 |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102467560B (zh) * | 2010-11-19 | 2014-07-09 | 金蝶软件(中国)有限公司 | 表格替换方法及系统 |
| DE102010054446A1 (de) | 2010-12-14 | 2012-06-14 | Giesecke & Devrient Gmbh | Portabler Datenträger mit Fehlbedienungszähler |
| CN103984647B (zh) * | 2013-02-08 | 2017-07-21 | 上海芯豪微电子有限公司 | 存储表替换方法 |
| US9916359B2 (en) * | 2015-06-01 | 2018-03-13 | Sap Se | Indexing dynamic hierarchical data |
| CN105183754B (zh) * | 2015-07-17 | 2018-11-02 | 浙江大学 | 一种分层式表格的自动读取方法 |
| CN106709005B (zh) * | 2016-12-23 | 2020-11-24 | 北京奇虎科技有限公司 | 一种处理数据库系统中的冗余索引的方法、装置和系统 |
| US10977040B2 (en) | 2019-02-19 | 2021-04-13 | International Business Machines Corporation | Heuristic invalidation of non-useful entries in an array |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH01279342A (ja) * | 1988-05-06 | 1989-11-09 | Fujitsu Ltd | キャッシュ制御方式 |
| JPH05216765A (ja) * | 1992-02-06 | 1993-08-27 | Hitachi Ltd | 階層バッファ記憶装置 |
| JPH09190382A (ja) * | 1996-01-02 | 1997-07-22 | Hewlett Packard Co <Hp> | コンピュータメモリシステムの競合キャッシュ |
| JPH10154102A (ja) * | 1996-10-21 | 1998-06-09 | Internatl Business Mach Corp <Ibm> | 多重階層のキャッシュ・メモリを有する情報処理システムにおけるデータ・コヒーレンシを強化する装置および方法 |
| JPH10207769A (ja) * | 1997-01-17 | 1998-08-07 | Mitsubishi Electric Corp | メモリ内蔵プロセサ |
| JP2002182980A (ja) * | 2000-10-25 | 2002-06-28 | Agere Systems Guardian Corp | キャッシュメモリにおける漏洩電力の低減方法及び装置 |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS56101684A (en) | 1980-01-16 | 1981-08-14 | Fujitsu Ltd | Information processing system |
| US5966735A (en) * | 1996-11-22 | 1999-10-12 | Digital Equipment Corporation | Array index chaining for tree structure save and restore in a process swapping system |
| US6035326A (en) * | 1997-05-07 | 2000-03-07 | International Business Machines Corporation | Mapping table lookup optimization system |
| US6425762B1 (en) * | 1998-02-24 | 2002-07-30 | Wind River Systems, Inc. | System and method for cosimulation of heterogeneous systems |
| US6956848B1 (en) * | 1999-06-15 | 2005-10-18 | Altigen Communications, Inc. | Computer network-based auto-attendant method and apparatus |
| US6826726B2 (en) * | 2000-08-18 | 2004-11-30 | Vaultus Mobile Technologies, Inc. | Remote document updating system using XML and DOM |
| US6877089B2 (en) * | 2000-12-27 | 2005-04-05 | International Business Machines Corporation | Branch prediction apparatus and process for restoring replaced branch history for use in future branch predictions for an executing program |
| US6804746B2 (en) * | 2001-03-01 | 2004-10-12 | Sony Corporation | Method and system for optimizing data storage and retrieval by an audio/video file system using hierarchical file allocation table |
| US6760732B2 (en) * | 2001-09-06 | 2004-07-06 | International Business Machines Corporation | Method and system for viewing a record of an organization having a hierarchy of departments |
| US7284100B2 (en) * | 2003-05-12 | 2007-10-16 | International Business Machines Corporation | Invalidating storage, clearing buffer entries, and an instruction therefor |
-
2006
- 2006-07-06 US US11/428,858 patent/US7401185B2/en active Active
-
2007
- 2007-06-05 CN CN2007101102341A patent/CN101101574B/zh not_active Expired - Fee Related
- 2007-07-04 JP JP2007176456A patent/JP5232413B2/ja not_active Expired - Fee Related
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH01279342A (ja) * | 1988-05-06 | 1989-11-09 | Fujitsu Ltd | キャッシュ制御方式 |
| JPH05216765A (ja) * | 1992-02-06 | 1993-08-27 | Hitachi Ltd | 階層バッファ記憶装置 |
| JPH09190382A (ja) * | 1996-01-02 | 1997-07-22 | Hewlett Packard Co <Hp> | コンピュータメモリシステムの競合キャッシュ |
| JPH10154102A (ja) * | 1996-10-21 | 1998-06-09 | Internatl Business Mach Corp <Ibm> | 多重階層のキャッシュ・メモリを有する情報処理システムにおけるデータ・コヒーレンシを強化する装置および方法 |
| JPH10207769A (ja) * | 1997-01-17 | 1998-08-07 | Mitsubishi Electric Corp | メモリ内蔵プロセサ |
| JP2002182980A (ja) * | 2000-10-25 | 2002-06-28 | Agere Systems Guardian Corp | キャッシュメモリにおける漏洩電力の低減方法及び装置 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008077650A (ja) * | 2006-09-19 | 2008-04-03 | Internatl Business Mach Corp <Ibm> | キャストアウトに関する改良されたコヒーレンシ管理を支援するプロセッサ、データ処理システム、およびデータ処理方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP5232413B2 (ja) | 2013-07-10 |
| CN101101574B (zh) | 2011-02-09 |
| US7401185B2 (en) | 2008-07-15 |
| CN101101574A (zh) | 2008-01-09 |
| US20080010407A1 (en) | 2008-01-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5232413B2 (ja) | 階層テーブルを管理するための方法およびコンピュータ・システム | |
| US9235531B2 (en) | Multi-level buffer pool extensions | |
| EP2588958B1 (en) | Apparatus, method, and system for improving power performance efficiency by coupling a first core type with a second core type | |
| CN105579978B (zh) | 用于动态控制高速缓存存储器的寻址模式的方法、设备和系统 | |
| Fernando et al. | Replica: A wireless manycore for communication-intensive and approximate data | |
| US8792498B2 (en) | System and method for enhanced updating layer-2 bridge address table on asymmetric multiprocessing systems | |
| CN108139966B (zh) | 管理转址旁路缓存的方法和多核处理器 | |
| US8301842B2 (en) | Efficient pseudo-LRU for colliding accesses | |
| EP3296880A1 (en) | Access system and method for data storage | |
| JP2015515076A (ja) | メモリ要素の割当てのために一方向リンク付けリストを区分化するシステム及び方法 | |
| CN110795213A (zh) | 一种虚拟机迁移过程中活跃内存预测迁移方法 | |
| CN104391803A (zh) | 一种分区操作系统的存储管理方法 | |
| Kim et al. | Benzene: An energy-efficient distributed hybrid cache architecture for manycore systems | |
| Chakraborty et al. | PMI extensions for scalable MPI startup | |
| US8135911B2 (en) | Managing a region cache | |
| CN116578424B (zh) | 基于hmat的内存回收方法 | |
| US10303567B2 (en) | Managing database nodes | |
| CN111638912A (zh) | 一种轻量级的处理器芯片分支预测器内容隔离方法及电子装置 | |
| CN105183668B (zh) | 缓存刷新方法及装置 | |
| CN115687183A (zh) | 一种K8s环境下基于grpc的缓存同步实现方法及系统 | |
| US9087085B2 (en) | Pre-assimilation values and post-assimilation values in hardware instance identifiers | |
| US7489689B2 (en) | Method, system and apparatus for scheduling a large pool of resources | |
| Helal et al. | Dynamic data reallocation for skew management in shared-nothing parallel databases | |
| WO2021128904A1 (zh) | 一种动态多级缓存的方法和设备 | |
| CN120144493B (en) | Memory access method, processor and related equipment |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100421 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20120221 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120529 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20120813 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120816 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20120913 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120919 |
|
| A524 | Written submission of copy of amendment under section 19 (pct) |
Free format text: JAPANESE INTERMEDIATE CODE: A524 Effective date: 20121026 |
|
| A072 | Dismissal of procedure [no reply to invitation to correct request for examination] |
Free format text: JAPANESE INTERMEDIATE CODE: A072 Effective date: 20130115 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130129 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130201 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130226 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130325 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D02 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| LAPS | Cancellation because of no payment of annual fees |