JP2008181558A - マルチプロセッサ及びマルチプロセッサシステム - Google Patents
マルチプロセッサ及びマルチプロセッサシステム Download PDFInfo
- Publication number
- JP2008181558A JP2008181558A JP2008090853A JP2008090853A JP2008181558A JP 2008181558 A JP2008181558 A JP 2008181558A JP 2008090853 A JP2008090853 A JP 2008090853A JP 2008090853 A JP2008090853 A JP 2008090853A JP 2008181558 A JP2008181558 A JP 2008181558A
- Authority
- JP
- Japan
- Prior art keywords
- data
- chip
- memory
- data transfer
- multiprocessor
- 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
Landscapes
- Multi Processors (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
【解決手段】CPU20と、該CPUに接続しているネットワークインタフェース32と、該CPUと該ネットワークインタフェースに直接接続しているアジャスタブルプリフェッチ命令キャッシュ24と、該CPUに直接接続しているデータ転送コントローラ30とを含んでなる複数のプロセッシングエレメント16と、各プロセッシングエレメントに接続し各プロセッシングエレメントによって共有される集中共有メモリ28とを含んでなるシングルチップマルチプロセッサ。
【選択図】図1
Description
単一プログラム中のサブルーチン、ループ、基本ブロック間の並列性を利用する粗粒度並列処理は、マクロデータフロー処理とも呼ばれる。ソースとなる例えばフォートランプログラムを、粗粒度タスク(マクロタスク)として、繰り返しブロック(RB:repetition block)、サブルーチンブロック(SB:subroutine block)、疑似代入文ブロック(BPA:block of pseudo assignment statements)の3種類のマクロタスク(MT)に分解する。RBは、各階層での最も外側のナチュラルループであり、SBはサブルーチン、BPAはスケジューリングオーバヘッドあるいは並列性を考慮し融合あるいは分割された基本ブロックである。ここで、BPAは、基本的には通常の基本ブロックであるが、並列性抽出のために単一の基本ブロックを複数に分割したり、逆に一つのBPAの処理時間が短く、ダイナミックスケジューリング時のオーバヘッドが無視できない場合には、複数のBPAを融合し得一つのBPAを生成する。最外側ループであるRBがDoallループであるときは、ループインデクスを分割することにより複数の部分Doallループに分割し、分割後の部分Doallループを新たにRBと定義する。また、サブルーチンSBは、可能な限りインライン展開するが、コード長を考慮し効果的にインライン展開ができないサブルーチンはそのままSBとして定義する。さらに、SBやDoall不可能なRBの場合、これらの内部の並列性に対し、階層的マクロデータフロー処理を適用する。
マルチグレイン並列化では、マクロデータフロー処理によりプロセッサクラスタ(PC)に割り当てられるループ(RB)は、そのRBがDoallあるいはDoacrossループの場合、PC内のプロセッシングエレメント(PE)に対してイタレーションレベルで並列化処理(分割)される。
(a)ステートメントの実行順序の変更
(b)ループディストリビューション
(c)ノードスプリッティングスカラエクスパンション
(d)ループインターチェンジ
(e)ループアンローリング
(f)ストリップマイニング
(g)アレイプライベタイゼーション
(h)ユニモジュラー変換(ループリバーサル、パーミュテーション、スキューイング)
また、ループ並列化処理が適用できないループに関しては、図4のようにループボディ部を次に述べる(近)細粒度並列処理か、ボディ部を階層的にマクロタスクに分割しマクロデータフロー処理(粗粒度タスク並列処理)を適用する。
PCに割り当てられるMTがBPAまたはループ並列化或いは階層的にマクロデータフロー処理を適用できないRB等の場合には、BPA内部のステートメント或いは命令を近細粒度タスクとしてPC内プロセッサで並列処理する。
12 チップ間接続ネットワーク
14 集中共有メモリ(チップ)
16 プロセッシングエレメント
20 CPU
22 分散共有メモリ
24 アジャスタブルプリフェッチ命令キャッシュ
26 ローカルデータメモリ
28 集中共有メモリ
30 データ転送コントローラ
32 ネットワークインタフェース
34 チップ内接続ネットワーク
Claims (1)
- CPUと、前記CPUに接続されているネットワークインタフェースと、スタティックスケジューリング時に転送されるデータを格納する第1メモリと、を備える複数のプロセッシングエレメントと、
前記各プロセッシングエレメントに接続され、前記各プロセッシングエレメントによって共有される集中共有メモリと、を備えるマルチプロセッサであって、
前記マルチプロセッサで実行されるコンパイラ又はユーザプログラムの指示によって前記第1メモリへデータが転送されることを特徴とするマルチプロセッサ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008090853A JP4784842B2 (ja) | 2008-03-31 | 2008-03-31 | マルチプロセッサ及びマルチプロセッサシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008090853A JP4784842B2 (ja) | 2008-03-31 | 2008-03-31 | マルチプロセッサ及びマルチプロセッサシステム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP36370299A Division JP4784792B2 (ja) | 1999-12-22 | 1999-12-22 | マルチプロセッサ |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008118007A Division JP4304347B2 (ja) | 2008-04-30 | 2008-04-30 | マルチプロセッサ |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2008181558A true JP2008181558A (ja) | 2008-08-07 |
JP2008181558A5 JP2008181558A5 (ja) | 2008-10-09 |
JP4784842B2 JP4784842B2 (ja) | 2011-10-05 |
Family
ID=39725341
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008090853A Expired - Lifetime JP4784842B2 (ja) | 2008-03-31 | 2008-03-31 | マルチプロセッサ及びマルチプロセッサシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4784842B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015038646A (ja) * | 2010-11-30 | 2015-02-26 | 株式会社東芝 | 情報処理装置及び情報処理方法 |
US9760355B2 (en) | 2013-06-14 | 2017-09-12 | Denso Corporation | Parallelizing compile method, parallelizing compiler, parallelizing compile apparatus, and onboard apparatus |
US10255118B2 (en) | 2013-01-07 | 2019-04-09 | Samsung Electronics Co., Ltd. | Processing system including a plurality of cores and method of operating the same |
-
2008
- 2008-03-31 JP JP2008090853A patent/JP4784842B2/ja not_active Expired - Lifetime
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015038646A (ja) * | 2010-11-30 | 2015-02-26 | 株式会社東芝 | 情報処理装置及び情報処理方法 |
US10255118B2 (en) | 2013-01-07 | 2019-04-09 | Samsung Electronics Co., Ltd. | Processing system including a plurality of cores and method of operating the same |
US9760355B2 (en) | 2013-06-14 | 2017-09-12 | Denso Corporation | Parallelizing compile method, parallelizing compiler, parallelizing compile apparatus, and onboard apparatus |
Also Published As
Publication number | Publication date |
---|---|
JP4784842B2 (ja) | 2011-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Etsion et al. | Task superscalar: An out-of-order task pipeline | |
Krashinsky et al. | The vector-thread architecture | |
US7490218B2 (en) | Building a wavecache | |
JP5224498B2 (ja) | メモリ管理方法、情報処理装置、プログラムの作成方法及びプログラム | |
Burger et al. | Scaling to the End of Silicon with EDGE Architectures | |
US20170083338A1 (en) | Prefetching associated with predicated load instructions | |
Chen et al. | Efficient data supply for hardware accelerators with prefetching and access/execute decoupling | |
Keckler et al. | Multicore processors and systems | |
US20170083339A1 (en) | Prefetching associated with predicated store instructions | |
Sohi et al. | Speculative multithreaded processors | |
WO2005072307A2 (en) | Wavescalar architecture having a wave order memory | |
US9378003B1 (en) | Compiler directed cache coherence for many caches generated from high-level language source code | |
JP4784792B2 (ja) | マルチプロセッサ | |
JP4304347B2 (ja) | マルチプロセッサ | |
Bousias et al. | Instruction level parallelism through microthreading—a scalable approach to chip multiprocessors | |
Owaida et al. | Massively parallel programming models used as hardware description languages: The OpenCL case | |
JP4784842B2 (ja) | マルチプロセッサ及びマルチプロセッサシステム | |
Leback et al. | Tesla vs. xeon phi vs. radeon a compiler writer’s perspective | |
Šilc et al. | A survey of new research directions in microprocessors | |
JP2009230764A (ja) | マルチプロセッサシステム | |
Tsai | Superthreading: Integrating compilation technology and processor architecture for cost-effective concurrent multithreading | |
Brownell | Architectural Implications of Automatic Parallelization With HELIX-RC | |
Arandi | The data-driven multithreading virtual machine | |
Takano | Performance scalability of adaptive processor architecture | |
Bernard et al. | A microthreaded architecture and its compiler |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080430 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080430 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20080430 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20080611 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080821 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080916 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081117 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090407 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090706 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20090721 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20090904 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110629 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4784842 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140722 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S201 | Request for registration of exclusive licence |
Free format text: JAPANESE INTERMEDIATE CODE: R314201 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |