作者noahsark430 (滄海無限 我的船渺小)
看板C_and_CPP
標題Re: [問題] 將平行處理的CUDA和MPI做結合
時間Fri Jan 4 23:43:41 2013
各位版友好:
小弟最近正在學cuda,我想請教我們實驗室有兩張卡(C2050)
如果程式由CPU直接分data給兩張GPU同時執行(我知道GPU之間
的資料交流是要用MPI,還是有什麼方法?),但如果我的程式
比如說先產生1~256*256個亂數,然後每個亂數疊代100次
假設D是device上的變數, D(x)=sin(D(x)) => 100次
我是否可以將1~32768 傳送給GPU1做疊代,32769~256*256給GPU2做疊代
而且是同時傳送,同時運算,整個運算的時間是跟一個GPU運算的差不多呢?
我有參考
http://ppt.cc/WEF~ 第82頁的做法
istat = cudaSetDevice(0)
......
istat = cudaSetDevice(1)
.....
但運算時間是單一GPU運算的兩倍.... 不平行 = =
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 182.155.14.216
※ noahsark430:轉錄至看板 Fortran 01/04 23:44
1F:→ akasan:power 夠力的話插在同一台主機上 然後參考cuda openmp範例 01/05 00:05
2F:→ zhouer:量一下時間是不是都花在搬資料了。 01/06 10:48