JP5863021B2 - マルチプロセッサシステム、及びマルチプロセッサシステムの制御方法 - Google Patents
マルチプロセッサシステム、及びマルチプロセッサシステムの制御方法 Download PDFInfo
- Publication number
- JP5863021B2 JP5863021B2 JP2011239264A JP2011239264A JP5863021B2 JP 5863021 B2 JP5863021 B2 JP 5863021B2 JP 2011239264 A JP2011239264 A JP 2011239264A JP 2011239264 A JP2011239264 A JP 2011239264A JP 5863021 B2 JP5863021 B2 JP 5863021B2
- Authority
- JP
- Japan
- Prior art keywords
- lock
- instruction
- cpu
- shared resource
- semaphore
- 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.)
- Active
Links
Images
Landscapes
- Multi Processors (AREA)
Description
複数のプロセッサと、
前記複数のプロセッサからアクセスされる共有リソースと、
プロセッサからの前記共有リソースに対するロック命令及びアンロック命令の受信に応じて、前記共有リソースの同期制御を行うセマフォ制御回路と、を備え、
前記セマフォ制御回路は、あるプロセッサの前記共有リソースのロック時間をカウントし、前記共有リソースのロック中にロック命令を送信したプロセッサの命令送信順序を保持し、確定した前記ロック時間と、前記命令送信順序と、を基に前記共有リソースに対するロックに失敗した各プロセッサの待ち時間を算出して通知する、ものである。
複数のプロセッサと、前記複数のプロセッサからアクセスされる共有リソースと、を備えるマルチプロセッサにおいて、プロセッサからの前記共有リソースに対するロック命令及びアンロック命令の受信に応じて、前記共有リソースの同期制御を行うマルチプロセッサの制御方法であって、
あるプロセッサの前記共有リソースのロック時間をカウントし、前記共有リソースのロック中にロック命令を送信したプロセッサの命令送信順序を保持し、確定した前記ロック時間と、前記命令送信順序と、を基に前記共有リソースに対するロックに失敗した各プロセッサの待ち時間を算出して通知する、ものである。
以下、図面を参照して本発明の実施の形態について説明する。図1は、本実施の形態にかかるマルチプロセッサシステムの全体構成を示すブロック図である。本実施の形態にかかるマルチプロセッサシステムは、一般的なマルチコアプロセッサの構成要素と同一の要素を有する。当該マルチプロセッサシステムは、CPU(Central Processing Unit)1〜nと、CPU1〜nからアクセス可能なメモリ30と、CPU1〜nからメモリ30へのアクセスを制御するメモリコントローラ20と、を有する。
待ち時間 =(受付番号20243−優先番号20425)×LOCK時間20426
20 メモリコントローラ
201 CPU命令調停回路
202 CPU命令デコーダ
203 メモリ制御回路
204 セマフォ制御回路
2041 LOCKアドレスバッファ(LAB)
20411 Vビット
20412 セマフォアドレス
20413 LOCK時間
20414 アドレス比較器
20415 セレクタ
2042 LOCK競合テーブル(LCT)
20421 Vビット
20422 セマフォアドレス
20423 ステータスフラグ
20424 受付番号
20425 優先番号
20426 LOCK時間
20427 アドレス比較器
20428 セレクタ
2043 LOCK成功・失敗判定回路
205 CPU命令返信回路
30 メモリ
Claims (6)
- 複数のプロセッサと、
前記複数のプロセッサからアクセスされる共有リソースと、
プロセッサから発行される前記共有リソースに対するロック命令、アンロック命令の受信に応じて、前記共有リソースの同期制御を行うセマフォ制御回路と、を備え、
前記セマフォ制御回路は、あるロック命令にかかる前記共有リソースのロック時間をカウントし、前記共有リソースのロック中にロック命令を発行したプロセッサの命令送信順序を保持し、確定した前記ロック時間と、前記命令送信順序と、に基づいて前記共有リソースに対するロックに失敗した各プロセッサのロック命令再発行までの待ち時間を算出して通知し、
前記セマフォ制御回路は、
前記共有リソースのロックに成功した前記ロック命令に関する第1エントリをn個(nは1以上の整数)保持する第1バッファと、
前記共有リソースのロックに失敗した前記ロック命令に関する第2エントリをn個(nは1以上の整数)保持する第2バッファと、
前記第1及び第2エントリと、入力されたロック命令との比較に応じて、当該ロック命令に対するロックの成否を判定し、ロック失敗の場合に前記待ち時間を算出する判定回路と、を備える、ことを特徴とする、マルチプロセッサシステム。 - 前記第1エントリは、ロックの有効性を示す第1Vビット値と、前記共有リソースのアドレスを示す第1アドレスと、前記ロック時間をカウントする第1ロック時間と、を有する構成であり、
前記第2エントリは、ロックが失敗したプロセッサがあるか否かを示す第2Vビット値と、前記共有リソースのアドレスを示す第2アドレスと、プロセッサ毎のロック命令の処理状態を示すステータスフラグと、プロセッサ毎のロック命令の入力順序を示す受付番号と、現在ロック中のロック命令のアンロック後にインクリメントされ、アンロック後にロックが許可されるロック命令の識別情報を示す優先番号と、確定した前記ロック時間を保持する第2ロック時間と、を有する構成であることを特徴とする請求項1に記載のマルチプロセッサシステム。 - 前記判定回路は、
入力されたロック命令に含まれるアドレスに基づいて、前記第1バッファと、前記第2バッファからそれぞれ対応する前記第1、前記第2エントリを取得し、
当該第1、第2エントリにかかる前記第1及び第2Vビット値が共に無効値(0)である場合、または当該第1エントリにかかる前記第1Vビット値が無効値(0)でありであり、当該第2エントリにかかる前記第2Vビット値が有効値(1)であり、かつ当該第2エントリにかかる前記受付番号と前記優先番号とが同じ場合、入力されたロック命令に対してロックを許可し、それ以外の場合にはロックを許可しないことを特徴とする、請求項2に記載のマルチプロセッサシステム。 - 前記判定回路は、
ロックに失敗した各プロセッサに対し、当該プロセッサにかかる前記受付番号から前記優先番号を減算した値に前記第2ロック時間の値を乗算した値を前記待ち時間とすることを特徴とする請求項3に記載のマルチプロセッサシステム。 - 前記判定回路は、
前記第2ロック時間に初期値が設定されている場合、ロックに失敗した各プロセッサに対し、前記待ち時間として0(待ち合わせなし)を通知することを特徴とする請求項2乃至請求項4のいずれか1項に記載のマルチプロセッサシステム。 - 複数のプロセッサと、前記複数のプロセッサからアクセスされる共有リソースと、を備えるマルチプロセッサにおいて、プロセッサから発行される前記共有リソースに対するロック命令及びアンロック命令の受信に応じて、前記共有リソースの同期制御を行うマルチプロセッサの制御方法であって、
あるロック命令の前記共有リソースのロック時間をカウントし、前記共有リソースのロック中にロック命令を送信したプロセッサの命令送信順序を保持し、確定した前記ロック時間と、前記命令送信順序と、に基づいて、前記共有リソースに対するロックに失敗した各プロセッサのロック命令再発行までの待ち時間を算出して通知し、
前記待ち時間の算出は、
前記共有リソースのロックに成功した前記ロック命令に関する第1エントリをn個(nは1以上の整数)保持し、
前記共有リソースのロックに失敗した前記ロック命令に関する第2エントリをn個(nは1以上の整数)保持し、
前記第1及び第2エントリと、入力されたロック命令との比較に応じて、当該ロック命令に対するロックの成否を判定して、ロック失敗の場合に前記待ち時間を算出する、マルチプロセッサの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011239264A JP5863021B2 (ja) | 2011-10-31 | 2011-10-31 | マルチプロセッサシステム、及びマルチプロセッサシステムの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011239264A JP5863021B2 (ja) | 2011-10-31 | 2011-10-31 | マルチプロセッサシステム、及びマルチプロセッサシステムの制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013097544A JP2013097544A (ja) | 2013-05-20 |
JP5863021B2 true JP5863021B2 (ja) | 2016-02-16 |
Family
ID=48619434
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011239264A Active JP5863021B2 (ja) | 2011-10-31 | 2011-10-31 | マルチプロセッサシステム、及びマルチプロセッサシステムの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5863021B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9632569B2 (en) * | 2014-08-05 | 2017-04-25 | Qualcomm Incorporated | Directed event signaling for multiprocessor systems |
KR102285749B1 (ko) | 2014-11-10 | 2021-08-05 | 삼성전자주식회사 | 세마포어 기능을 갖는 시스템 온 칩 및 그것의 세마포어 구현 방법 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001084235A (ja) * | 1999-09-10 | 2001-03-30 | Nec Corp | ロック粒度統計情報を利用した排他制御方法及びプログラムを記録した機械読み取り可能な記録媒体 |
JP5349072B2 (ja) * | 2009-02-17 | 2013-11-20 | パナソニック株式会社 | 資源排他制御方法および資源排他制御装置 |
-
2011
- 2011-10-31 JP JP2011239264A patent/JP5863021B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2013097544A (ja) | 2013-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7627722B2 (en) | Method for denying probes during proactive synchronization within a computer system | |
US11748174B2 (en) | Method for arbitration and access to hardware request ring structures in a concurrent environment | |
EP2972885B1 (en) | Memory object reference count management with improved scalability | |
US8826301B2 (en) | Method and system for processing data for preventing deadlock | |
US20110126208A1 (en) | Processing Architecture Having Passive Threads and Active Semaphores | |
JP2002182976A (ja) | マルチプロセッサ・システムにおけるメモリ・アクセスの動的直列化 | |
US20130014120A1 (en) | Fair Software Locking Across a Non-Coherent Interconnect | |
US10908944B2 (en) | Apparatus with shared transactional processing resource, and data processing method | |
US7383336B2 (en) | Distributed shared resource management | |
CN106068497B (zh) | 事务存储器支持 | |
US9632955B2 (en) | Reorder buffer permitting parallel processing operations with repair on ordering hazard detection within interconnect circuitry | |
KR20120009907A (ko) | 결정적 프로그레스 인덱스 기반 락 제어 및 스레드 스케줄링 방법 및 장치 | |
US20110320743A1 (en) | Memory ordered store system in a multiprocessor computer system | |
JP5863021B2 (ja) | マルチプロセッサシステム、及びマルチプロセッサシステムの制御方法 | |
JP2014182507A (ja) | 計算機及び排他制御方法及び排他制御プログラム | |
US7809874B2 (en) | Method for resource sharing in a multiple pipeline environment | |
CN112306703A (zh) | 一种numa系统中的临界区执行方法及装置 | |
US20160328276A1 (en) | System, information processing device, and method | |
WO2021037124A1 (zh) | 一种任务处理的方法以及任务处理装置 | |
JP5676664B2 (ja) | リソース管理装置、リソースの管理方法、及びプログラム | |
JP2010092101A (ja) | 情報処理装置 | |
GB2522653A (en) | Bridge and method for coupling a requesting interconnect and a serving interconnect in a computer system | |
JP7151439B2 (ja) | 演算処理装置および演算処理装置の制御方法 | |
US20140006722A1 (en) | Multiprocessor system, multiprocessor control method and processor | |
CN112306698A (zh) | 一种numa系统中的临界区执行方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20140807 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140911 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150525 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150630 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150821 |
|
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: 20151124 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20151217 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5863021 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |