2013-08-24 77 views
0

我是CUDA和並行編程的新手。我想在CUDA中做一個雙重平行的部分,有人可以幫我解決這個問題。很抱歉張貼在這裏,但我有點困惑,找不到任何漂亮的教程或幫助它。 我想做一個函數,使它在CUDA中並行工作,然後我想使CUDA的另一個函數並行地從該函數調用,這有可能在CUDA的內核函數中實現嗎?需要CUDA並行程序幫助

編輯

例如我有兩個內核函數my_progmy prog_1我打電話他們這樣

main_function 
{ 
    my_prog<<core,threads>>(); 
} 

my_prog() 
{ 
    //here i want to call my_prog_1 in parallel 
    my_prog_1<<core,threads>>(); 
} 

回答

2

如果你想學習如何編寫CUDA程序,我建議採取一些的可用教程。

NVIDIA有一個webinar page與各種教程。

對於初學者來說,這兩個網絡研討會將給你一個基本的介紹到CUDA有足夠的知識,能夠編寫運行速度快CUDA程序:使用CUDA C

GPU計算 - 簡介(2010) 介紹到使用CUDA C進行GPU計算的基礎知識。概念將通過代碼示例的演練加以說明。沒有先前的GPU計算經驗

使用CUDA C高級GPU計算1(2010) 第一級優化技術,如全局內存優化和處理器利用率。概念將使用真實代碼示例進行說明

如果您想學習如何編寫CUDA程序,那麼這將花費2個小時。

編輯: 這裏描述的是CUDA Dynamic Parallelism。它需要具有3.5(今天)的CUDA計算能力的設備。

你可以找到一個完整的用戶指南它here

+0

Thankx的答案,我可以寫一個簡單的CUDA程序只是想如何寫一個CUDA程序,它可以在雙並行計算做一些指導。例如,我有一個內核函數,我已經從該內核函數中並行調用,我想調用另一個內核或設備函數進一步並行,是否有可能?謝謝 – Hadi

+0

如果你有一個特定的編碼問題,也許你應該展示你編寫的代碼的一個例子。使用'double'數據類型計算不應該是cc 1.3或更新設備的問題。您可以並行調用2個內核,這稱爲併發執行。這隻有在內核相對較小時纔有用。 –

+0

請參閱修改,我已更新對 – Hadi