高速化・並列化

■ 最新情報
- OpenMP を用いた Fortran コードの並列化基礎セミナー (2012/7/11)
- 事例(構造解析 D社様)を掲載しました (2012/5/28)
- "PARDISOの利用"ページを追加しました (2012/5/28)
- "OpenMPとは"ページを追加しました (2012/4/20)
- 事例(千葉大学 野口・柏崎研究室 様)を掲載しました (2012/2/21)
- Fortranコードの並列化実践(OpenMP)の資料・プログラム販売開始しました(2011/9/13)
計算時間にお困りではないですか?
製品の設計や開発サイクルにおいて、数値計算が重要な位置を占めるに伴い、
: など、数値計算への要求は高まり、増加する計算時間にお困りではないでしょうか。 |
![]() |
計算時間が増加すると、生産性の低下や様々なコストが増加するだけでなく、そもそも開発サイクルに間に合わずに計算不可能である場合もあるかと思います。
これを解決する方法として、高速化・並列化(HPC)があります。
複数コアを100%使えていますか?
近年、CPUはクロック周波数の向上が頭打ち気味となり、コア数の増加や命令セットの拡張で性能向上を図っています。 |
![]() |
並列化するには
ではプログラムを並列化するにはどうしたらよいのでしょうか。
計算環境として敷居が低いものとしては、CPUの複数コアを利用するOpenMP(Open Multi-Processing)があります。
また、本来画像出力に用いられるGPUを用いるGPGPU(General Purpose computing on GPU)があります。
これらのものは、基本的に複数コアを搭載したCPUか、GPGPUに対応したGPUがあれば現在の環境で利用できます。
一方で複数のマシンを利用して並列計算を行うものとしてMPI(Message Passing Interface)があります。
こちらはクラスタを組む必要がありますが、複数台のメモリも使用できるため、1台のマシンでは不可能な、大規模なモデルを扱えるようになります。
しかし、実際の作業となると、一番並列化が容易なOpenMPでも、実際現場で使われているプログラムは複雑で、並列化が容易でないことも多々あります。
何よりも、普段開発や解析をされている方がプログラムの並列化に時間を費やすのは難しいのではないでしょうか。
一方、コンパイラの自動並列化機能を用いる方法もありますが、
実際のプログラムではなかなか効果が得られない場合が多々あります。
そのような方のために、弊社では、高速化・並列化するサービスをご提供しています。
事例については、高速化・並列化事例をご覧ください。
高速化・並列化サービス カタログ高速化・並列化サービスのカタログです。 ( PDF形式, 全4ページ, 849KB )
OpenMPを用いた Fortranコードの並列化基礎セミナー 一部資料OpenMPを用いた Fortranコードの並列化基礎セミナーの一部資料です。 ( PDF形式, 全32ページ, 2.26MB )
続きの資料、デモプログラムをご希望の方は、お気軽にお問い合わせください。高速化・並列化事例01早稲田大学草鹿研究室と共同で行った、流体と化学反応の連成解析コードの並列化に関する資料です。 ( PDF形式, 全4ページ, 439KB )