GPGPU

Thrust

ThrustはCUDA用の並列アルゴリズムライブラリ。紹介とインストールはこちらを。 このメモ日記を書いている今、CUDAのバージョン2.3はベータ版。インストールしたのは2.2 リンクを張った記事では、CUDAが2.2、Thrustが1.0.0なので、それに合わせてインストー…

GPGPUでシミュレーション

シミュレーションを並列処理するとき、同一のシードからスタートした同一の疑似乱数列を使うことになる。理事乱数列としてjavaで使っていたメルセンヌ・ツイスターを使うべく、C用のソースを入手して、CUDAのホストコードに使ってみることにする。 メルセン…

プログラミング講習資料

CUDAも動く、CUDA SDKも分かってきたので、ソースをいじろう。 東工大 丸山直也氏の講習会資料(2009年春)「GPUを用いたHPC: 基礎と応用」全5回が、東工大のホームページから閲覧可能です。 はじめに CUDAの基礎その1 CUDAの基礎その2 TSUBAME のTesla を…

開発環境であるSDKではディレクトリ構成を尊重すること

SDKを使ってGUIベースでプログラムを作るときは、GUIがディレクトリ構成等の面倒を見てくれるので意識する必要はない(のだと思う)が、GUIを使わずにSDKのサンプルプロジェクトを書き換えながら、新規のプログラムを作るときには、ディレクトリ構成を気にする…

Eclipse+CDT

Windows上でCプログラミングをするために: コンパイラが要ります 統合開発環境もあります こちらの記事では、統合開発環境のトップにEclipse+CDT(C-depeloping toolsとかの略と思います)がある さらさらと、うまく設定が済むように書いてあります。 実際に…

Cをもう少し覚える

Cの基礎の基礎、「C言語入門」 Cのライブラリの作り方とそれを入れ込んでのコンパイル(こちら)

GPGPUを使うにあたっての『周辺』

並列処理 並列処理には、基本的なことがあり、それに関するチューニングは出来合いのものにお任せすることも適切 例えば、やりたい処理をベクトルや行列の計算としてやれば、CUBLASとかにお任せすればよい 2分岐木方式でまとめ上げていく、とか CUBLAS CUBL…

並列計算の仕組み事始め

CUDAのHost codeに以下のような記述がある。 dim3 grid(size_x / BLOCK_DIM, size_y / BLOCK_DIM, 1); dim3 threads(BLOCK_DIM, BLOCK_DIM, 1); transpose<<< grid, threads >>>(d_odata, d_idata, size_x, size_y); grid, threads,BLOCKについて GPUとGrid …

Cも手習い

いわゆるハローワールドソース。"hello.c"として保存して #include <stdio.h> int main(void) { printf("Hello, world\n"); return 0; } "gcc hello.c"とコマンドを打つと、"a.exe"なる実行ファイルができる。 "Makefile"という拡張子なしのファイルを以下のように作</stdio.h>…

GPU最適化された演算ライブラリ

CUDA BLAS (Basic Linear Algebra Subprograms)は、ベクトルと行列を扱う線形計算ルーチンを集めたもので、CUDA用にチューニングされたもの(こちらに記事)

コードの初歩の初歩

CUDAサンプルソースはこちらから、ダウンロード。基本的には、"hoge.h"と"hoge.cu"と"hoge_kernel.cu"とを見る。"hoge.h"が、条件設定のファイル。"hoge.cu"がホストを動かす部分で"Host code"と及ばれている。"hoge_kernel.cu"がGPUで並列処理する部分で"De…

パスで難航

まず、サンプルが動くことを確認。 "/home/ryamada/NVIDIA_CUDA_SDK/projects/matrixMul"にサンプルプロジェクトがあるので、それをやってみる。 "/home/ryamada/NVIDIA_CUDA_SDK/bin/linux/release"以下に"matrixMul"という実行可能ファイルを作って、それ…

CでCUDAをするために

JavaでCUDAを動かすのは、そのうち可能になりそうだが、まだ、未完成のよう・・・(たとえばこちら) というわけでC Javaをeclipseで覚えたので、Cもeclipseでやれば、乗り切れそうに思う。何と言っても、コードを書いて、ビルド・デバッグがさらさらできる…

GPGPUを試す

PC・GPU RV724AV-CREUHP xw4600/CT Workstation OSなしモデル インテル(R) Core(TM)2 Duo E8400 (3.00GHz/6MB/1333MHz FSB) インテル(R) X38 Express チップセット 4GB DDR-2 SDRAM(800MHz, ECC, 2GBx2) 500GBハードディスクドライブ(Serial ATA 3.0Gb/s, NC…

RもGPGPU

Rのapply関数群は、いかにも、パラレル処理的な関数である。GPGPUで動かしてみたりできるかと思えば、もちろん、そんな情報はすでにウェブ上にあります。R+GPUはこちら

メモ

概説記事 ブログ1 ブログ2 ノートPCの選択 GPUのスペックについて CUDA向けC言語開発環境『CUDA2.0』