[發明專利]程序代碼的并行性的分析方法和系統有效
| 申請號: | 200710109089.5 | 申請日: | 2007-06-18 |
| 公開(公告)號: | CN101329638A | 公開(公告)日: | 2008-12-24 |
| 發明(設計)人: | 馮博;閻蓉;王鯤;王華勇 | 申請(專利權)人: | 國際商業機器公司 |
| 主分類號: | G06F9/45 | 分類號: | G06F9/45;G06F9/455 |
| 代理公司: | 北京市中咨律師事務所 | 代理人: | 李崢;于靜 |
| 地址: | 美國*** | 國省代碼: | 美國;US |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 程序代碼 并行 分析 方法 系統 | ||
1.一種程序代碼的并行性的分析方法,包括:
模擬程序代碼的順序執行,以跟蹤該程序代碼的執行過程;以及
根據對上述程序代碼的執行過程的跟蹤結果,對上述程序代碼進行并 行性的分析,
其中上述模擬程序代碼的順序執行,以跟蹤該程序代碼的執行過程的 步驟進一步包括:
為上述程序代碼模擬其目標系統的執行環境;
將上述程序代碼加載到上述所模擬的執行環境中;
在上述執行環境中,順序執行上述所加載的程序代碼中的各指令;以 及
將上述程序代碼在上述順序執行過程中的執行信息記入日志,
其中上述將程序代碼在上述順序執行過程中的執行信息記入日志的步 驟進一步包括:
判斷上述程序代碼中的當前指令的類型:
如果其是調用非系統API的函數調用/返回指令,則將當前執行周期以 及被調用函數的標識記入日志;
如果其是調用系統API中的存儲器分配或釋放函數的函數調用/返回 指令,則將當前執行周期以及被分配的存儲器大小、存儲器地址記入日志; 以及
如果其是加載/存儲指令,則將當前執行周期以及數據地址、數據大小、 讀/寫類型記入日志。
2.如權利要求1所述的程序代碼的并行性的分析方法,其中上述對程 序代碼的執行過程的跟蹤結果是記錄有上述程序代碼在上述順序執行過程 中的執行動作、所述動作的相應時間信息或存儲器類型信息的日志。
3.如權利要求1所述的程序代碼的并行性的分析方法,其中上述日志 被分類為函數調用日志、存儲器分配日志以及存儲器訪問日志,分別用于 記錄上述程序代碼在順序執行過程中的函數調用信息、存儲器分配信息以 及存儲器訪問信息。
4.如權利要求1或2所述的程序代碼的并行性的分析方法,其中根據 對上述程序代碼的執行過程的跟蹤結果,對上述程序代碼進行并行性的分 析的步驟進一步包括:
根據上述跟蹤結果,分析上述程序代碼在上述執行過程中的各次函數 調用之間的依賴關系,以找出其中沒有依賴關系的、可并行執行的函數調 用。
5.如權利要求4所述的程序代碼的并行性的分析方法,其中分析上述 程序代碼在上述執行過程中的各次函數調用之間的依賴關系的步驟進一步 包括:
根據上述跟蹤結果所記錄的上述程序代碼在上述順序執行過程中的各 執行動作及其相應的時間信息和存儲器類型信息,來進行上述依賴關系的 分析。
6.如權利要求4所述的程序代碼的并行性的分析方法,其中分析上述 程序代碼在上述執行過程中的各次函數調用之間的依賴關系的步驟進一步 包括:
根據上述跟蹤結果,為上述程序代碼在上述執行過程中的各次函數調 用獲得該次函數調用期間的讀訪問記錄集合和寫訪問記錄集合;
對于同一函數中的各函數調用,根據該各函數調用期間的讀訪問記錄 集合和寫訪問記錄集合,確定其之間是否存在存儲器訪問沖突;以及
將上述同一函數中的各函數調用中存在存儲器訪問沖突的各函數調用 確定為具有依賴關系、不可并行執行,而將不存在存儲器訪問沖突的各函 數調用確定為不具有依賴關系、可并行執行。
7.如權利要求4所述的程序代碼的并行性的分析方法,其中分析上述 程序代碼在上述執行過程中的各次函數調用之間的依賴關系的步驟進一步 包括:
以上述程序代碼在上述執行過程中的各次函數調用作為節點、以函數 調用之間的相互關系作為節點之間的關系,生成該程序代碼的調用樹;
根據上述跟蹤結果,為上述各節點獲得其所對應的函數調用期間的讀 訪問記錄集合和寫訪問記錄集合;
對于上述調用樹中同一父節點下的各葉子節點,根據其讀訪問記錄集 合和寫訪問記錄集合確定其之間是否存在存儲器訪問沖突;以及
將上述同一父節點下的各葉子節點中存在存儲器訪問沖突的各葉子節 點進一步合并為一個節點。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于國際商業機器公司,未經國際商業機器公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200710109089.5/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種車輛內飾件表皮的搪塑方法
- 下一篇:一種交換設備及其電路可用性檢測的方法





