• 製品案内
  • 受託解析・開発
  • 実績・事例
  • セミナー
  • サポート
  • 資料ダウンロード
  • お問い合わせ

MATLABからFortranへの移植と高速化

MATLABコードの利点と課題

幅広い分野で普及しているMATLABは、

  1. 変数の型宣言や配列宣言を書く必要がないコードの書きやすさ
  2. 試行錯誤やデバッグのしやすさ
  3. 行列演算などBuild-in関数の計算の速さ
  4. 簡単に利用できる可視化機能
など、さまざまな利点により、多くの方に利用されています。

しかし、MATLABはインタープリタ言語であるためか、MATRIXを生成する部分やループ演算などについては、コンパイル型言語に比べ計算が遅いと言われています。
特に、規模の大きなプログラム、メモリを多く消費するプログラムではその傾向があるようです。


Fortranに移植するメリット

Fortranは、過去から現在まで開発されてきたMKLやGSL(GNU Scientific Library)など優秀なライブラリ群が多く存在します。

また、OpenMPを用いた共有メモリ型の並列化だけでなく、MPIによる分散メモリを利用しての、大規模並列計算への道が開けるため、スパコンなどでの利用のメリットもあります。

MATLABの利点と課題を考えると、アルゴリズムを開発するフェーズではMATLABを用いて試行錯誤をし、その後コードをあまり修正しなくてもいいフェーズに移行し、大規模なモデルでパラメータスタディをする場合は、Fortranなどに書き直したほうがいいといえます。

実際に、弊社で行ったあるプログラムでの実績としては、シングル計算同士で比較し、MATLABに比べ5倍ほどになっております。



Fortranへの移植サービス

弊社では、MATLABコードからFortranへの移植サービスをご提供しております。
また、元のプログラムによっては、アルゴリズムの高速化や並列化を行うことで、さらなる高速化も可能な場合があります。

MATLABプログラムのFortranへの移植にご興味のある方は下記問い合わせフォームからご連絡ください。




関連資料ダウンロード

お問い合わせ