[發明專利]一種實時在線GPU通用計算模擬及調試方法有效
| 申請號: | 201710052412.3 | 申請日: | 2017-01-24 |
| 公開(公告)號: | CN107066378B | 公開(公告)日: | 2020-12-04 |
| 發明(設計)人: | 熊效李;楊浩 | 申請(專利權)人: | 成都皓圖智能科技有限責任公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06F8/51;G06T1/20 |
| 代理公司: | 成都宏順專利代理事務所(普通合伙) 51227 | 代理人: | 周永宏;王偉 |
| 地址: | 610054 四川省成都市成華區一*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 實時 在線 gpu 通用 計算 模擬 調試 方法 | ||
1.一種實時在線GPU通用計算模擬及調試方法,其特征在于,包括以下步驟:
S1、將GPU通用計算代碼映射成對應的CPU高級語言代碼;步驟S1包括以下分步驟:
S11、將GPU通用計算代碼使用的基礎數據類型映射成CPU高級語言的數據類型;
S12、將GPU通用計算中的寄存器變量映射成CPU高級語言中的結構體變量;
S13、將GPU通用計算中指定線程組各分量上線程數目的設定方式映射為CPU高級語言的設定方式;
S14、將GPU通用計算中的入口函數映射成CPU高級語言的被調函數;
S2、模擬GPU同CPU的數據交換過程;步驟S2具體為:
利用步驟S12中對StructuredBuffer,RWStructuredBuffer的C++結構體的定義,在步驟S12生成的結構體變量中分配相同大小的內存,同時通過對GPU寄存器的宏定義區分這些變量的不同寄存器類型及索引;在CPU代碼中設定“是否進行GPU模擬”的標志位,當進行GPU計算時標志位值為“真”,向GPU寄存器內寫入和讀取數據;當使用CPU代碼模擬GPU計算時標志位值為“假”,CPU代碼直接將數據送入內存,計算結束時將數據從相應的內存中讀出;
S3、構建線程池,模擬GPU通用計算的過程;
S4、指定固定線程,對模擬的GPU通用計算代碼進行調試。
2.根據權利要求1所述的實時在線GPU通用計算模擬及調試方法,其特征在于,所述步驟S3包括以下分步驟:
S31、設在GPU中允許的線程組內最大線程數目為GPU_MAX_THREADNUM,那么在CPU代碼中初始建立GPU_MAX_THREADNUM數目的線程,線程的入口函數ThreadFun(threadID)相同,其中參數threadID為線程的索引,且threadID=0,1,2,…,GPU_MAX_THREADNUM-1;
S32、設在步驟S1中GPU通用計算代碼被映射成了C++類:GPU_SIM,在調用GPU模擬代碼的文件中,定義GPU_SIM類型的變量GPU_SIM_CODE;構建函數Fun_Set()用于向步驟S31中的入口函數ThreadFun(threadID)傳遞GPU線程組及線程組內各分量的線程個數,以及變量GPU_SIM_CODE的指針;
S33、在入口函數ThreadFun(threadID)中進行映射,將GPU中三維結構的線程映射到一維的線程池中,使得CPU調用的GPU模擬函數參數和GPU的入口函數中的參數含義一致,完成線程池的構建;
S34、程序啟動時,啟動線程執行入口函數ThreadFun(threadID),當程序調用GPU模擬計算部分的代碼時,程序告知線程模擬器GPU并行計算的線程數目,同時向入口函數ThreadFun(threadID)告知GPU模擬代碼的入口地址,ThreadFun(threadID)計算出GPU模擬代碼的參數后便調用GPU模擬代碼完成并行計算,最后從相應內存讀入計算后的數據。
3.根據權利要求2所述的實時在線GPU通用計算模擬及調試方法,其特征在于,所述步驟S4具體為:
定義“是否指定線程ID運行”的標志位bRunOnlyThread,同時定義允許運行的三維線程ID變量ThreadID,根據已構建的GPU模擬器,在入口函數ThreadFun(threadID)內判斷標志位bRunOnlyThread,如果標志位為真,則通過過濾非ThreadID的線程來指定ThreadID的線程的運行,從而只針對ThreadID的線程進行調試。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于成都皓圖智能科技有限責任公司,未經成都皓圖智能科技有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710052412.3/1.html,轉載請聲明來源鉆瓜專利網。





