タグ

ブックマーク / tech.ckme.co.jp (3)

  • OpenMPの使い方:tech.ckme.co.jp

    OpenMPは複数のCPU(複数コアを含む)を持った計算機上での並列化に威力を発揮する。 OpenMPを使う最大の利点は、OpenMPに対応したコンパイラであれば、非常に簡単に並列化できる点である。 現在、gcc、Visual C++、およびIntelコンパイラなど主要なコンパイラはOpenMPに対応している。 習得も他の並列化技法に比べて比較的容易である。 なお、速度を最優先にする場合、単一コンピュータ上で動かした場合でも、メモリのローカリティのためかOpenMPよりMPIの方が効率のよいことが多い。MPIに関してはこちらを参照。 なお、インテルがOpenMP初心者向けに非常にわかりやすい文書を公開している。 OpenMPプログラムのコンパイル OpenMPの各種関数を使わない場合、#pragma ompで始まる指示をソースコード内に書き込み、下記のコンパイルスイッチをつけてコンパイルす

  • MPIの設定と使い方:tech.ckme.co.jp

    目次 >> MPI MPI(Message Passing Interface) このページでは、MPI(http://www-unix.mcs.anl.gov/mpi/)について解説する。 MPIとは MPIとは、複数の計算機で並列に計算させて、演算の高速化を図る手法である。1台のコンピュータでも可能ではあるが、通常は複数台のコンピュータをネットワークでつないだ構成を取る。1台の場合は、OpenMPなど別の方法も検討してみるとよい。 MPIはほかの並列か方法と比べて、大規模な並列化に向いているが、その一方で、実行するには特別な方法でプログラムを起動させてやる必要があるなど、少々敷居が高い。 OpenMPIとMPICHがあるが、どちらもメジャーなので好きな方を使えばよい。 OpenMPIのインストール $ sudo apt-get install openmpi-bin openmpi-d

  • CUDAを使う:tech.ckme.co.jp

    ここではGPGPU向け統合環境の一つ、NVIDIAのCUDA(Compute unified device architecture)を使って、大規模並列計算を行ってみる。 NVIDIAによれば、並列度の高い処理ではCPUと比べておよそ10倍以上の速さで処理できるという。 なお、CUDA環境をインストールすると、自動的にOpenCLも使えるようになる。OpenCLに関しては別項を参照。 目次 CUDAのインストール(Linux編) - LinuxにCUDA環境をインストール CUDAのインストール(Windows編) - Windows XPにCUDA環境をインストール CUDAのインストール(Mac OS X編) - Mac OS XにCUDA環境をインストール 初めてのプログラム - とりあえずCUDAでのプログラムに慣れてみます 拡散方程式を解く - より実用的な処理の一例として拡散

  • 1