NEWS CENTER


The MathWorks社の並列演算処理ツール、
MS社のスケジューラを標準サポート

[issued: 2006年12月18日]
この記事を : 印刷する 印刷   メールで送る メールで送る   ブックマーク はてなブックマークに登録 この記事をクリップ Buzzurlにブックマーク Yahoo!ブックマークに登録   

 米The MathWorks社は、同社の数値解析ソフトウエア「MATLAB」で作成した複雑な演算処理を並列処理するためのツール「Distributed Computing Toolbox 3.0」と「MATLAB Distributed Computing Engine 3.0」を開発した。従来のバージョン2.0に比べ、並列処理により演算処理の時間を短縮したことに加え、米Microsoft社のスケジューラを標準でサポートした。日本での販売/サポートはサイバネットシステムが行う。
 The MathWorks社は、演算処理の複雑さとデータ量の増大に伴い、複数のコンピュータによる分散/並列処理を可能にするツールの開発に取り組んできた。今回開発したバージョン3.0では、HPC(high performance computation)ユーザーやテクニカルコンピュータユーザーでも、並列処理のためのプログラミングを容易に行えるようにした。従来、複雑な演算処理を並列処理しようとすれば、MPI(message passing interface)規格に準拠したプログラミングが必要だった。バージョン3.0では「Pモード」で記述すれば、MPIを理解しなくても、並列処理が行えるようになった。
 例えば、3行15列の行列を15行3列に変換する計算を行う場合、MPIで並列処理を記述するとプログラムコードはかなり多くなる。前バージョンの 2.0で並列処理しようとしてもまだ多い。バージョン3.0の場合、同じ処理内容が「P>>E=D'」と1行の記述で済むという。「最初にP が付くと並列処理の環境となる。EとD'は変数でこれが並列処理される」(同社)という。
 並列処理の大まかな流れは以下の通り(図1)。まず、MATLABやシミュレーション環境「Simulink」、Distributed Computing Toolbox 3.0を組み込んだクライアントのコンピュータでデータを作成し並列処理するためのタスクに分ける。それをクラスタコンピュータであるMATLAB Distributed Computing Engine 3.0のスケジューラに送信する。スケジューラは送られてきたタスクをコピーして同社が「Lab」と呼ぶコンピュータに振り分ける。LabはMATLAB 関数を実行するエンジンで、タスクを処理しているときは複数のLab間で通信を行う。Labで処理した結果はスケジューラを経由してクライアント側に戻される。Labは演算する処理量に応じて8/16/32/64/96/128などの単位で拡張できる。
 スケジューラはこれまで、大規模クラスタ向けの「LSF」などをサポートしてきたが、バージョン3.0ではMicrosoft社のWindows CCS(Compute Cluster Server) 2003も標準でサポートすることになった。
 価格はDistributed Computing Toolbox 3.0が約20万円、MATLAB Distributed Computing Engine 3.0は8Lab構成で約100万円。
(馬本 隆綱)


図1 並列処理の流れ
この記事を : 印刷する 印刷   メールで送る メールで送る   ブックマーク はてなブックマークに登録 この記事をクリップ Buzzurlにブックマーク Yahoo!ブックマークに登録   

Sponsor Links [ PR ]

EDN RESOURCE CENTERpowered by Supplier Showcase

SPECIAL CONTENTS [ PR ]

最新ニュース

キーワードタグ一覧