我想找到所有可能的單詞的組合,這些單詞可以由11個單詞的給定拼貼組形成。在CUDA上可以這麼做嗎?如果是的,比如何。謝謝!使用CUDA來計算所有可能的單詞組合?
0
A
回答
1
是的,你可以在cuda中進行排列,實際上是sr。 Wong Shao Voon執行Permutations algorithm with CUDA and OpenCL。
他沒有像你想要的那樣使用字符串,但這不是一個主要問題,你只需要製作一個方法,將算法完成後我們使用的字母(字母)轉換爲你的字符。想象一下,他將所有的排列都保存在一個二維數組中,你可以遍歷所有的矩陣,而不是打印出你想要打印的單詞(例如if(matrix [i] [j] =='A'))的printf( 「蟒蛇」))。
基準
「我的基準CUDA對CPU應用,使CPU和在基準使用的GPU,是英特爾的i7 870(8個內核),2.93GHz的和的Nvidia GeForce分別460,使CPU應用化妝充分利用8個內核來尋找排列,CPU應用程序使用因子分解來分割不同CPU內核和每個工作線程之間的第n個排列,STL next_permutation用於從第n個排列中找出每個連續排列。下面列出了11個元素的計算排列:找到的11個元素的排列總數爲39,916,800。數組的大小需要存儲結果爲39,916,800 x 11 = 439084800。這是我的1GB內存GPU可以存儲排列的最大數量「
崩潰|複製代碼 CPU:550ms 的OpenCL:581ms 550ms
純因子分解(平均時間) CUDA版本1
2版,每階乘分解(中等定時) CUDA 1個next_permutation:317ms 的OpenCL:373ms
第3版,每因子9 next_permutation ial分解(平均時間) CUDA:681ms OpenCL:456ms
相關問題
- 1. 計算所有可能的組合[RGB]
- 2. 計算所有可能的組合
- 3. 將單詞分解成所有可能的「子詞」 - 所有可能的組合
- 4. 所有可能的單詞組合與給定的單詞集
- 5. 計算集合/組的所有可能組合
- 6. 如何計算子組中的所有可能組合?
- 7. Python的計算所有可能的組合爲表
- 8. 計算來自兩個陣列的所有可能的字組合
- 9. 計算R中所有可能的組合
- 10. 如何使用Ruby來計算單詞中單詞頻率和CSV文件中單詞的組合?
- 11. 使用NSDictionary來計算單詞在UITextField
- 12. 用單詞生成所有可能的二進制組合('true''false')性能
- 13. 所有可能的組合
- 14. 所有可能的組合
- 15. 所有可能的組合
- 16. 所有可能的組合組合
- 17. 解析出單詞的所有組合
- 18. 計算一系列的所有組合
- 19. 在C中計算可能的組合
- 20. 計算可能的組合數 - C#
- 21. 計算方程的可能組合
- 22. 使用CUDA計算遞歸數組
- 23. 利用所有可能的組合
- 24. Pythonic方式來計算產品的所有組合
- 25. 使用CUDA計算不同集合中點之間的所有對距離
- 26. 查找單詞的所有可能的組合在給定的格式
- 27. 計算所有可能的長方體
- 28. 計算utf8的所有可能值
- 29. Ç計算所有可能的子網
- 30. 我可以使用什麼模式來存儲單詞組合?
請問您可以編輯您的問題的標題,使其易懂? – talonmies