1 / 70

その他の並列アーキテクチャ

その他の並列アーキテクチャ. コンピュータアーキテクチャ特論 hunga @ am . ics . keio . ac . jp テキスト  pp.10-12 (該当個所なし). Fine grain . SIMD. Coarse grain . マルチプロセッサ. コントロール フロー制御. バス結合型UMA スイッチ結合型UMA. Simple NUMA CC-NUMA COMA. MIMD. NUMA. NORA. マルチコンピュータ. データフロー制御 混合制御 要求駆動 シストリックアレイ. その他. 全プロセッサが同一命令で動作

misty
Download Presentation

その他の並列アーキテクチャ

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. その他の並列アーキテクチャ コンピュータアーキテクチャ特論 hunga@am.ics.keio.ac.jp テキスト pp.10-12(該当個所なし)

  2. Fine grain  SIMD Coarse grain  マルチプロセッサ コントロール フロー制御 バス結合型UMA スイッチ結合型UMA Simple NUMA CC-NUMA COMA MIMD NUMA NORA マルチコンピュータ データフロー制御 混合制御 要求駆動 シストリックアレイ その他

  3. 全プロセッサが同一命令で動作 • 柔軟性が低い 命令 SIMD 命令メモリ 演算プロセッサ データメモリ

  4. SIMD型の分類 • 粗粒度型:各ノードで浮動小数点演算処理が可能 • ILLIAC-IV,BSP,GF-11 • 最近の高性能CPUのマルチメディア命令 • 細粒度型:各ノードは1bitまたは数bitの演算しかできない • ICLDAP,CM-2,MP-2 • コネクションマシンは応用分野を人工知能に拡大(CmLispの功績)

  5. CM-2のプロセッサ Flags A B F OP C Context s c 256bit memory 1bit serial ALU

  6. P P P P P P P P P P P P P P P P CM2のプロセッサチップ 4096チップで 64KPE 命令 1チップ構成 Router 4x4 Processor Array 12links 4096 Hypercube connection 256bit x 16 PE RAM

  7. SIMD型の将来 • 粗粒度SIMD • 大規模なものの復活はないだろう • マイクロプロセッサの高速化技術として小規模なものが生き残る • 細粒度SIMD • 画像処理等で圧倒的に有利 • CM2 → CM5のようにマルチプロセッサ化した方が性能が高い

  8. シストリックアーキテクチャ Data列x 演算アレイ Data列y 特定の演算能力を持つアレイ列に一定の間隔で リズミカルにデータを送りこみ、並列演算

  9. a11 a12 0 0 a21 a22 a23 0 0 a32 a33 a34 0 0 a43 a44 帯行列の行列積 y=Ax y0 y1 y2 y3 x0 x1 x2 x3 = a yi yo X+ yo= a x + y i x

  10. a11 a12 0 0 a21 a22 a23 0 0 a32 a33 a34 0 0 a43 a44 帯行列の行列積 y=Ax a23 a32 a22 a12 a21 a11 X + x1

  11. a11 a12 0 0 a21 a22 a23 0 0 a32 a33 a34 0 0 a43 a44 帯行列の行列積 y=Ax a33 a23 a32 a22 a12 a21 y1=a11x1 X + X + x2 x1

  12. a11 a12 0 0 a21 a22 a23 0 0 a32 a33 a34 0 0 a43 a44 帯行列の行列積 y=Ax a34 a43 a33 a23 a32 a22 y1=a11 x1+ a12 x2 y2=a21 x1 X + x3 x2 x1

  13. a11 a12 0 0 a21 a22 a23 0 0 a32 a33 a34 0 0 a43 a44 帯行列の行列積 y=Ax a44 a34 a43 a33 a23 a32 y2=a21 x1+ a22 x2 X + X + x2 x3

  14. a11 a12 0 0 a21 a22 a23 0 0 a32 a33 a34 0 0 a43 a44 帯行列の行列積 y=Ax a44 a34 a43 y2=a21 x1+ a22 x2+ a23 x3 a33 y3= a32 x2 X + x3 x2

  15. シストリックアーキテクチャの特長 • 入出力ピン数が少ない • 単純な同期制御 • 近接接続のみで構成可能 • 1980年代Kungらの提案により注目されたがLSI実装面積の不足により普及しなかった 他の「VLSIアルゴリズム」と共に復活の可能性

  16. データフローアーキテクチャ • データをトークンとして考え、到着と共に計算処理が駆動される。 • 記憶要素を明示的に指定しない。 • アルゴリズムの持つ並列性を最大限に引き出すことができる。

  17. データフローグラフ d e c x a b + + x (a+b)x(c+(dxe))

  18. 命令実行サイクル 命令読み出し データ待ち合せ データ読み出し 命令読み出し 命令実行 命令実行 データ格納 あて先指定 データフローマシン 通常のプロセッサ

  19. データフローマシンの問題点 • 純粋なデータフローマシン(Dennisのマシン)は無駄が多い。 • 色付きトークン等の導入でデータフローグラフの再利用。 • 構造の複雑化 • 演算器レベルの処理時間とそれに要する時間の比率の問題 • 局所性の無視

  20. 日本はデータフローマシン研究の世界的な中心(だった)日本はデータフローマシン研究の世界的な中心(だった) • 電総研 Sigma-I :科学技術用 • 電総研 EM-4/EM-X:演算の粒度を高める工夫 • NTTDFM:関数型言語を指向。LenientConsの提案 • NECImPP:画像処理用のチップ。商用化を目指した

  21. 要求駆動マシン(リダクションマシン、デマンドドリブンマシン)要求駆動マシン(リダクションマシン、デマンドドリブンマシン) Z:(/,x,y) y: (-,a,b) x: (+,a,b) b: (5) a: (3)

  22. 要求駆動マシン • 値が必要になった時点で計算を駆動 • cf. データフローマシン • データフローマシンに比べて並列性は小さいが、無駄は少ない(のではないか) • 実装例はほとんどない(どうやって実装するんだ??)

  23. ReconfigurableSystem(CustomComputingMachine) • SRAM型プログラマブルデバイスから構成されるシステム上で問題の解法アルゴリズムを直接ハードウェア化して実行する • 専用マシンのスピード • 汎用マシンの柔軟性 • プログラム格納型計算機とはまったく異なる原理でしかも堂々たる体系を作ることができる

  24. SRAM(ConfigurationMemory) 5入力テーブル SRAM型FPGA (FieldProgrammableGateArray) 2F.F. I/O LogicBlock Switch

  25. SRAM(ConfigurationMemory) SRAM型CPLD (ComplexProgrammableLogicDevice) I/O LogicBlock Switch

  26. 最近の状況 • Xilinx社Virtex、ALTERA社APEX等新世代が登場 • ゲート数は500Kゲートに及ぶ(メモリ等を換算する場合が多いが、、、) • 最大動作周波数は設計次第だが30MHz程度ならば容易に実現可能 • 内部データ格納用SRAM • PartialReconfiguration、マルチコンテキスト等の新機能を持ったデバイスの登場

  27. ReconfigurableSystemの分類 • スタンドアローン型 • 独立性の高い専用システム • Splash 1・2, RM-I,II,III,IV, RASH(三菱)、ATTRACTOR(NTT) • コ・プロセッサ型 • 汎用プロセッサの一部の処理を高速化 • PRISMI,II、DISC-II、PipeRench、CHIMAERA,Chameleonなど

  28. ReconfigurableSystemの発達 StandAlone Co-processor NewDevice 1990年 第1回FPL SPLASH MPLD PRISM-I 1992年 第1回JapaneseFPGA/PLDConf. SPLASH-2 PRISM-II RM-I WASMII 1993年 第1回FCCM RM-II CacheLogic RM-III DISC RM-IV 1995年 YARDS Mult.ContextFPGA RM-V DISC-II HOSMII ATTRACTOR FIPSOC Cont.Switch.FPGA RASH PipeRench DRL PCA 2000年 CHIMERA Chamereon

  29. 米国計算機科学センター 文字列検索、画像処理、DNAの塩基配列間の距離を求める問題でCray-IIの330倍の性能を発揮 直線シストリックアレイ構造 VHDL, 並列Cによるプログラミング AnnapolisMicroSystems社より商用化(WILDFIRE) Splash-2(Arnoldら 92)

  30. Splash-II  • 米国計算機科学センタ • 文字列検索、画像処理、DNAの塩基配列間の距離を求める問題でCray-IIの330倍の性能を発揮 • 直線アレイ構造 • VHDL,並列Cによるプログラミング

  31. FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA mem. mem. mem. mem. mem. mem. mem. mem. mem. mem. mem. mem. mem. mem. mem. mem. RM-IV(神戸大学) FPIC Interface

  32. disk RASH(三菱電機) CompactPCI bus EXE- ボード CPUボード ディスプレイ RASH unit Ethernet LAN CD 1Unit: 最大6枚のEXEボードとCPUボード(Pentium) 複数のUnitを接続可能 &p This slide is supported by Dr.Nakajima of Mitsubishi.

  33. Clocks/Cont. signals Local-bus EXEボードの構成 リンク接続とバス接続 2系統のクロック PCIバスI/F SRAM搭載 DRAM付加ボード搭載可 PCI-bus PCI-bus I/F SRAM (2MB) PCI Local-bus EXE-board controller FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGAAlteraFLEX10K100A(62K-158KGate) &p

  34. FPGA FPGA RISC RISC ATTRACTOR(NTT) 高速シリアルリンク(1Gbps) ATM I/O RAM (LUT) ATM SW Buffer RISC RISC RISC RISC Ethernet CompactPCI MPU ATM通信処理に 特化したシステム 多種類のボードを接続 Mem. ボードレベルで再構成可能

  35. RHiNETー1/NI(RWCP+KeioU.) NI board Interconnecting PC nodeswith flexible NI

  36. RHiNET-1/NI: FlexibleInterface Optical Interconnect Region Buffer AddressTranslate Table FIFO PacketBuffer PrimitiveHandler (FLEX10K) Twin Memory PCI Interface Variousmessagehandlingprimitives canbechanged

  37. RHiNET-1/NI

  38. Optical Interconnection Module • 133MHz operation 1.5Gbps bandwidth

  39. コ・プロセッサ型 • CoreCPUと密接続 • プログラムの一部を高速化 • 最近、CoreCPUと同一チップ上に実装が可能になり、様々なシステムが提案されている • NAPA,Garp,Chameleon,Chimaera,PipeRench

  40. PRISMII(Brown大学) Am2955 CPU Data Address Control BootROM Switch DRAM BurstMode MemoryController DRAM FPGA Module FPGA Module FPGA Module プログラムのよく使う部分を高速化 コプロセッサ型の元祖

  41. UCBのプロジェクト MIPSコアとReconfigurable Arrayが強結合しメモリ階層を共有 コンパイラの静的解析によりループ処理を抽出しハードウェア化 画像処理などでUltrasparcの43倍の性能 Garp (Hauserら 97) Memory queue MIPS Cache Q Q Q Crossbar 32bit buses x 5 ReconfigurableArray

  42. Brigham Young大学 動的な部分書き換え機能を用いた汎用プロセッサ 任意のカスタム命令を基本命令セットに追加可能 各モジュールをユーザが設計 C言語上から関数として利用 FPGAをカスタム命令モジュールのキャッシュのように使用 DISC (Wirthlinら 95) FPGA 3 Processor Core System Memory FPGA 1 Bus I/F Configuration Controller FPGA 2 Custom Instruction Space Host P/C

  43. Northwestern大学 スーパスカラプロセッサのデータパスに可変構造アレイを挿入 シャドウレジスタファイルから9レジスタを一度に読込み Out of Order制御 10~20%の高速化 CHIMAERA (Yeら 2000) シャドウレジスタ ファイル レジスタ ファイル 可変構造 アレイ uPコア コントローラ

  44. Chameleon(Chameleon社)  • FieldProgrammableSystemLevelIntegratedCircuits(FPSLICs) • 疎粒度のReconfigurableProcessingFabric、RISCCore、PCIController、MemoryController、DMAController、SRAMを1チップ上に混載 • 信号処理、通信プロトコル処理用、高速DSPの5-10倍の性能

  45. Chameleon CS2112 32-bit PCI Bus 64-bit Memory Bus PCI Cont. RISC Core Memory Controller 128-bit RoadRunner Bus Configuration Subsystem DMA Subsystem Reconfigurable Processing Fabric 160-pin Programmable I/O

  46. CTL中の最大8命令をDPU中で実行可能 CTLは、同じサイクルで次の命令を決定可能 新しいbit streamをloadすることで構成を変えられる LM DPU CTL Tile0 Slice0 Reconfigurable Processing Fabricの構造 LM DPU CTL Tile0 Slice3 108のDPU(DataPathUnit)が4つのSlice(各3Tile)を構成 1Tile: 9DPU=32bit ALU X 7 16bit + 16bit乗算器 X 2

  47. DPUの構成 OP:C、Verilog演算子サポート DPU単位のSIMD,パイプライン Instruction Register & Mask Routing MUX OP Register Barrel Shifter Register Register & Mask Routing MUX

  48. Reconfigurable Systemの問題点 • SRAM型FPGAの演算器は専用CPU,DSPよりも10倍遅く、10倍集積度が劣る • メモリとの接続が脆弱 • アルゴリズムを変換するための標準的方法が存在しない • 問題サイズがシステムサイズを越えるとお手上げ

  49. 問題の解決 1 • SRAM型FPGAの演算器は専用CPU,DSPよりも10倍遅く、10倍集積度が劣る • 最新のプロセス利用により差が縮まる • 粗粒度FPGA • CPUとの混載 • メモリとの接続が脆弱 • 大規模SRAMとの混載 • DRAM混載

  50. FPAccA(広島市立大) RoutingMatrix Arrayoffloating ALU(Add/Mult) model2(0.35um) 12x 25MFLOPS ALU

More Related