= SINGプロセッサ = == 基本情報 == * SIMD型のプロセッサである * Processor Element(PE)と呼ぶ演算ユニットが512個搭載されている * PEには倍精度加算器、単精度相当乗算器、ALUが内蔵されている * PEには、レジスタが32bitで64ワードと、ローカルメモリが512ワードがある * 演算器のレイテンシーのため、パイプライン処理により擬似的に4変数へ同一の命令を実行する * 論理的には毎クロック2048変数へ同一の命令を実行するSIMD計算機になる * PEは32個ごとにユニットになっており、これをBroadcast Block(BB)と呼ぶ * BBには、共有メモリとして2048ワードのメモリ(Broadcast Memory:BM)がある * BMとPEの接続トポロジーは、BMを中心としたstar networkである * 1チップには16個のBBが搭載されている * 16個のBBは、Reduction Network(RN)により接続されていて、その接続トポロジーはbinary netowrkである * RNの接続ノードにはPEと同等のユニットが接続されているので、BBからの出力の合計, max, minなどのreductionが可能 = GRAPE-DR model 450をつかうためのノウハウ = == GDRLIBのマニュアル暫定版 == GDRLIBは、LSUMP(仮称)コンパイラで生成したDDコードを、KFCR社のGRAPE-DR model 450で使うためのAPIである。もともと、GRAPE-DRでは、アセンブラからAPIを自動生成する機能があるが、あまり使いやすいとはいえないので、より直感的に使えるようなラッパーとしての役割を果たす。まず、APIの説明をした後、使い方の例を解説する。 なお、現時点ではDD演算用に特化しているため、アプリケーションもC++でコンパイルする必要がある。 === int GDRsetup(void) === XXX