本研究では、FPGAによってクラスタ向きのネットワークカードを設計・開発し、これによるPCクラスタシステムを実現した。本ネットワークカードは32ビットPCIバスカードであり、1個のFPGA、2個のRAM、4個のコネクタで構成される。PCIインターフェース、4方向の通信ポートおよびスイッチが1個のFPGA上に実現され、FPGAの再構成によってネットワークの構成を変更することができる。2個のRAMの一方には通信量が、もう一方には通信開始などのイベントの発生時刻がハードウェアによって記録される。 ソフトウェアに関しては、ネットワークカード用のデバイスドライバ、通信ライブラリおよび通信記録の可視化ツールの開発を行った。デバイスドライバはLinux用のカーネルモジュールとして実装した。通信ライブラリは基本通信関数(初期化、終了、送信、受信、ブロードキャスト、バリア同期)を実装した。再構成支援ツールについては、クラスタを構成する各PCに対して管理用PCからリモートでネットワークインターフェース回路を再構成できるツールを作成した。 本カードを使用してリング型ネットワークによるPCクラスタを構成した。システム評価のために、通信バッファの深さを変更してFPGAを再構成し、通信性能の測定・比較を行った。またカード上の通信記録機能により、ヤコビ法の実行における通信の可視化を行った。これらより本システムの基本機能の動作が確認できた。現在、2次元格子型ネットワークへの拡張を進めている。
|