JP6428521B2 - 演算処理装置及び演算処理装置の制御方法 - Google Patents
演算処理装置及び演算処理装置の制御方法 Download PDFInfo
- Publication number
- JP6428521B2 JP6428521B2 JP2015145934A JP2015145934A JP6428521B2 JP 6428521 B2 JP6428521 B2 JP 6428521B2 JP 2015145934 A JP2015145934 A JP 2015145934A JP 2015145934 A JP2015145934 A JP 2015145934A JP 6428521 B2 JP6428521 B2 JP 6428521B2
- Authority
- JP
- Japan
- Prior art keywords
- cache memory
- data
- arithmetic processing
- data block
- cache
- 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
- 238000000034 method Methods 0.000 title claims description 23
- 230000015654 memory Effects 0.000 claims description 174
- 230000004044 response Effects 0.000 claims description 57
- 230000008569 process Effects 0.000 description 15
- 230000008859 change Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 6
- 238000001693 membrane extraction with a sorbent interface Methods 0.000 description 5
- 238000013523 data management Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000001427 coherent effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000007704 transition 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
- G06F12/0833—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means in combination with broadcast means (e.g. for invalidation or 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/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/0815—Cache consistency protocols
- G06F12/0817—Cache consistency protocols using directory methods
- G06F12/0822—Copy directories
-
- 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/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- 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/25—Using a specific main memory architecture
- G06F2212/254—Distributed memory
- G06F2212/2542—Non-uniform memory access [NUMA] 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)
Description
図1は、本発明の一実施形態における演算処理装置としてのCPU(Central Processing Unit)を有するマルチプロセッサシステムの構成例を示すブロック図である。図1に示すマルチプロセッサシステムは、CPU11(11−0、11−1、・・・)とメモリ16(16−0、16−1、・・・)との組を複数有し、CPU<#0>11−0、CPU<#1>11−1、・・・の複数のCPUは、バス17によって相互に接続されている。
12 プロセッサコア
13 1次(L1)キャッシュメモリ
14 2次(L2)キャッシュメモリ
15 コヒーレンシコントローラ
16 メモリ
17 バス
21 キャッシュメモリ部
22 キャッシュ制御管理部
23 データ管理部
26 コヒーレンシ制御部
27 タグ保持部
Claims (6)
- 演算処理を行う複数の演算処理部と、
前記演算処理部毎に分割した複数のキャッシュメモリと、
前記複数のキャッシュメモリ間のコヒーレンシ制御を行い、前記キャッシュメモリからのストア要求を受けたとき、前記複数のキャッシュメモリの内に前記ストア要求の対象となるデータブロックを共有しているキャッシュメモリがある場合、前記ストア要求を発行したキャッシュメモリへ前記ストア要求の対象となるデータブロックを転送するように対象データブロックを共有しているキャッシュメモリのいずれか1つのキャッシュメモリを制御するとともに、前記ストア要求の対象となるデータブロックの状態を管理している演算処理装置からの排他権獲得応答を受けて前記ストア要求を発行したキャッシュメモリへ送信する制御部とを有することを特徴とする演算処理装置。 - 前記キャッシュメモリは、データ付きの前記排他権獲得応答を受信したときにセットし、前記排他権獲得応答のデータに前記キャッシュメモリを更新したときにリセットするフラグを有することを特徴とする請求項1記載の演算処理装置。
- 前記キャッシュメモリは、前記フラグがリセットされているときには受信したデータの書き込みが行われ、前記フラグがセットされているときには受信したデータの書き込みが抑止されるバッファを有することを特徴とする請求項2記載の演算処理装置。
- 前記制御部は、前記キャッシュメモリにおけるデータブロックの状態を含むタグ情報をすべての前記キャッシュメモリについて保持し、保持されている前記タグ情報を参照して前記複数のキャッシュメモリ間のコヒーレンシ制御を行うことを特徴とする請求項1〜3の何れか1項に記載の演算処理装置。
- 前記制御部は、前記ストア要求を発行したキャッシュメモリへ前記ストア要求の対象となるデータブロックを転送するように制御するキャッシュメモリをLRU(Least Recently Used)に基づいて選択することを特徴とする請求項1〜4の何れか1項に記載の演算処理装置。
- 演算処理を行う複数の演算処理部と、前記演算処理部毎に分割した複数のキャッシュメモリとを有する演算処理装置の制御方法であって、
前記複数のキャッシュメモリ間のコヒーレンシ制御を行う前記演算処理装置の制御部が、前記キャッシュメモリからのストア要求を受けたとき、前記複数のキャッシュメモリの内に前記ストア要求の対象となるデータブロックを共有しているキャッシュメモリがある場合、前記ストア要求を発行したキャッシュメモリへ前記ストア要求の対象となるデータブロックを転送するように対象データブロックを共有しているキャッシュメモリのいずれか1つのキャッシュメモリを制御し、
前記制御部が、前記ストア要求の対象となるデータブロックの状態を管理している演算処理装置からの排他権獲得応答を受けて前記ストア要求を発行したキャッシュメモリへ送信することを特徴とする演算処理装置の制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015145934A JP6428521B2 (ja) | 2015-07-23 | 2015-07-23 | 演算処理装置及び演算処理装置の制御方法 |
US15/156,890 US9910778B2 (en) | 2015-07-23 | 2016-05-17 | Operation processing apparatus and control method of operation processing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015145934A JP6428521B2 (ja) | 2015-07-23 | 2015-07-23 | 演算処理装置及び演算処理装置の制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017027402A JP2017027402A (ja) | 2017-02-02 |
JP6428521B2 true JP6428521B2 (ja) | 2018-11-28 |
Family
ID=57837060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015145934A Expired - Fee Related JP6428521B2 (ja) | 2015-07-23 | 2015-07-23 | 演算処理装置及び演算処理装置の制御方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9910778B2 (ja) |
JP (1) | JP6428521B2 (ja) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2047888A1 (en) * | 1990-07-27 | 1992-01-28 | Hirosada Tone | Hierarchical memory control system |
JP2786124B2 (ja) * | 1995-04-26 | 1998-08-13 | 甲府日本電気株式会社 | 共有メモリ型マルチプロセッサシステム |
JP3897218B2 (ja) * | 1999-10-08 | 2007-03-22 | 富士通株式会社 | キャッシュ装置及び制御方法 |
WO2007099583A1 (ja) | 2006-02-28 | 2007-09-07 | Fujitsu Limited | システムコントローラおよびキャッシュ制御方法 |
JP4613247B2 (ja) * | 2007-06-20 | 2011-01-12 | 富士通株式会社 | 演算処理装置、情報処理装置及び演算処理装置の制御方法 |
US8176255B2 (en) * | 2007-10-19 | 2012-05-08 | Hewlett-Packard Development Company, L.P. | Allocating space in dedicated cache ways |
EP2405361A4 (en) * | 2009-03-06 | 2012-12-19 | Fujitsu Ltd | COMPUTER SYSTEM, CONTROL METHOD, RECORDING MEDIUM, AND CONTROL PROGRAM |
US9367461B2 (en) * | 2014-01-31 | 2016-06-14 | The Regents Of The University Of Michigan | Ordering constraint management within coherent memory systems |
-
2015
- 2015-07-23 JP JP2015145934A patent/JP6428521B2/ja not_active Expired - Fee Related
-
2016
- 2016-05-17 US US15/156,890 patent/US9910778B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20170024321A1 (en) | 2017-01-26 |
JP2017027402A (ja) | 2017-02-02 |
US9910778B2 (en) | 2018-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10169080B2 (en) | Method for work scheduling in a multi-chip system | |
US9529532B2 (en) | Method and apparatus for memory allocation in a multi-node system | |
US7373466B1 (en) | Method and apparatus for filtering memory write snoop activity in a distributed shared memory computer | |
US20150254182A1 (en) | Multi-core network processor interconnect with multi-node connection | |
US9372800B2 (en) | Inter-chip interconnect protocol for a multi-chip system | |
US20050160132A1 (en) | Transaction references for requests in a multi-processor network | |
US9208092B2 (en) | Coherent attached processor proxy having hybrid directory | |
US10592459B2 (en) | Method and system for ordering I/O access in a multi-node environment | |
JP5505516B2 (ja) | 情報処理システムおよび情報送信方法 | |
KR102092660B1 (ko) | Cpu 및 다중 cpu 시스템 관리 방법 | |
CN108874687A (zh) | 针对拼贴式末级高速缓存的非统一总线(nub)互连协议 | |
US20200341898A1 (en) | Using a directory-based cache coherence system to regulate snooping | |
US11360891B2 (en) | Adaptive cache reconfiguration via clustering | |
US20140297966A1 (en) | Operation processing apparatus, information processing apparatus and method of controlling information processing apparatus | |
JP2006048406A (ja) | メモリシステム制御装置およびメモリシステム制御方法 | |
JP5408713B2 (ja) | キャッシュメモリ制御システム及びキャッシュメモリの制御方法 | |
JP6428521B2 (ja) | 演算処理装置及び演算処理装置の制御方法 | |
US9983994B2 (en) | Arithmetic processing device and method for controlling arithmetic processing device | |
US7725660B2 (en) | Directory for multi-node coherent bus | |
JP3897218B2 (ja) | キャッシュ装置及び制御方法 | |
US20210397560A1 (en) | Cache stashing system | |
JP2018195183A (ja) | 演算処理装置および演算処理装置の制御方法 | |
US20140189255A1 (en) | Method and apparatus to share modified data without write-back in a shared-memory many-core system | |
Yadav | A study on requests serialization in directory-based protocol for MESI cache coherence protocol | |
US6636948B2 (en) | Method and system for a processor to gain assured ownership of an up-to-date copy of data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180413 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180919 |
|
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: 20181002 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181015 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6428521 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |