[發(fā)明專利]基于CUDA并行計算架構(gòu)對折疊進行GPU并行化的方法在審
| 申請?zhí)枺?/td> | 202310003422.3 | 申請日: | 2023-01-03 |
| 公開(公告)號: | CN116051355A | 公開(公告)日: | 2023-05-02 |
| 發(fā)明(設(shè)計)人: | 呂健;謝曉堯;于徐紅 | 申請(專利權(quán))人: | 貴州師范大學(xué) |
| 主分類號: | G06T1/20 | 分類號: | G06T1/20;G06F11/34 |
| 代理公司: | 上海德譽達專利代理事務(wù)所(普通合伙) 31426 | 代理人: | 馬朋巍 |
| 地址: | 550001 *** | 國省代碼: | 貴州;52 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 cuda 并行 計算 架構(gòu) 折疊 進行 gpu 方法 | ||
本發(fā)明公開了基于CUDA并行計算架構(gòu)對折疊進行GPU并行化的方法,包括以下步驟:步驟S1、基于gperftools做性能分析;步驟S2、分析數(shù)據(jù)依賴性;步驟S3、基于CUDA的GPU并行。本發(fā)明基于CUDA并行計算架構(gòu)對折疊進行GPU并行化,在并行之前對折疊先進行優(yōu)化,消除其中的數(shù)據(jù)循環(huán)依賴并且重構(gòu)目標函數(shù),重寫CUDA核函數(shù)在GPU上實現(xiàn)折疊并取得良好的效果。
技術(shù)領(lǐng)域
本發(fā)明涉及醫(yī)療器械烘干裝置技術(shù)領(lǐng)域,具體為基于CUDA并行計算架構(gòu)對折疊進行GPU并行化的方法。
背景技術(shù)
PRESTO是一套完整開源的脈沖星搜索工具,其中包含適于各個搜索流程的工具。折疊也是其中之一,是用于搜索周期信號的,對百萬量級的候選體折疊生成相應(yīng)的脈沖輪廓圖,并基于這些脈沖輪廓圖對候選體進行初篩,但隨著射電望遠鏡設(shè)備的越發(fā)精密和技術(shù)手段的越發(fā)成熟,產(chǎn)生的觀測數(shù)據(jù)量劇增,急需快速處理數(shù)據(jù)的問題,為此,我們提出一種實用性更高的基于CUDA并行計算架構(gòu)對折疊進行GPU并行化的方法。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供基于CUDA并行計算架構(gòu)對折疊進行GPU并行化的方法,解決了現(xiàn)有的問題。
為實現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:基于CUDA并行計算架構(gòu)對折疊進行GPU并行化的方法,包括以下步驟:
步驟S1、基于gperftools做性能分析;
步驟S2、分析數(shù)據(jù)依賴性;
步驟S3、基于CUDA的GPU并行。
優(yōu)選的,所述步驟S1具體包括以下步驟:
S11、鏈接庫,安裝gperftools會附帶庫環(huán)境;
S12、運行需要做性能分析的代碼,此時gperftools會對運行的代碼進行性能分析,并輸出結(jié)果;
S13對這個輸出的結(jié)果做分析運算,得到其中各個函數(shù)在性能分析中所占的比例,生成可讀的文本和圖片結(jié)果。
優(yōu)選的,所述步驟S2具體包括以下步驟:
S21、在并行時,有數(shù)據(jù)依賴關(guān)系的總會被分配到用一個計算資源上執(zhí)行,并不會產(chǎn)生錯誤歧義;
S22、有循環(huán)依賴的是不同次的迭代,因此有可能會分配到不同的計算資源上,而此時因為缺少之前的迭代的結(jié)果,本次迭代中的計算會產(chǎn)生錯誤結(jié)果,從而依次影響后續(xù)的迭代,導(dǎo)致最終的計算錯誤。
優(yōu)選的,所述步驟S3具體包括以下步驟:
串行的折疊中的的combine_prof函數(shù)是在四重循環(huán)里面調(diào)用的,在計算數(shù)據(jù)的時候,是在計算機上重復(fù)執(zhí)行四重循環(huán)次數(shù)個combine_profs函數(shù),而基于CUDA的GPU并行,則是消除了數(shù)據(jù)循環(huán)依賴的基礎(chǔ)上,可以把四重循環(huán)次數(shù)個gpu_conbine_profs函數(shù)發(fā)送到GPU的核上計算,同時可以在GPU的核上調(diào)用多個函數(shù)。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果如下:
本發(fā)明基于CUDA并行計算架構(gòu)對折疊進行GPU并行化,在并行之前對折疊先進行優(yōu)化,消除其中的數(shù)據(jù)循環(huán)依賴并且重構(gòu)目標函數(shù),重寫CUDA核函數(shù)在GPU上實現(xiàn)折疊并取得良好的效果。
本發(fā)明分析、消除數(shù)據(jù)的循環(huán)依賴性,在并行時,同時有很多個GPU核心在參與計算,如果存在數(shù)據(jù)的循環(huán)依賴性,即本次迭代的結(jié)果在下一次或多次迭代中使用,那么在做GPU并行時,分配到不同的GPU核心上計算,這種情況下會產(chǎn)生錯誤的計算結(jié)果,因此必須消除數(shù)據(jù)循環(huán)依賴性來保證在GPU上并行的準確性以及得到準確的計算結(jié)果;最后在有了以上的基礎(chǔ)上,對原函數(shù)進行重構(gòu)保留適合并行的部分,已達到更好的GPU并行效果,結(jié)合CUDA把重構(gòu)的函數(shù)重寫為在GPU上運行的核函數(shù)。
附圖說明
圖1為本發(fā)明的gpu_preppfold和prepfold運行時間對比示意圖;
圖2為本發(fā)明的實驗結(jié)果圖比較示意圖。
具體實施方式
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于貴州師范大學(xué),未經(jīng)貴州師范大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202310003422.3/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





