2010-03-02 CUDAはSPMDなのかSIMDなのか(書きかけ) 頭の中を整理します。 MPIのように、SPMD(1つのプログラムで、複数のデータを扱う)プログラミングモデルである。全てのデータに対して、同じプログラムだが、命令が同じとは限らない。データ毎に命令が異なる場合もあり(ex. if文)。 それでいて、SM(Streaming Multiprocessers)内では個々のデータ毎に命令が独立して異なるようには出来ず(全てのSPに対して同じ処理となり)、SIMDとなる。Warp単位ではSPMDとして振る舞うことが出来る。 完全に理解してはいないので、うまく書けませんね。さらっと書けるようにします。