[發明專利]基于近似寄存器訪問規范的代碼執行的運行時間并行化在審
| 申請號: | 201680020747.0 | 申請日: | 2016-02-04 |
| 公開(公告)號: | CN107430509A | 公開(公告)日: | 2017-12-01 |
| 發明(設計)人: | 諾姆·米茲拉希;阿爾貝托·曼德勒;莎伊·科倫;喬納森·弗里德曼 | 申請(專利權)人: | 森蒂彼得塞米有限公司 |
| 主分類號: | G06F9/30 | 分類號: | G06F9/30;G06F9/38;G06F9/00 |
| 代理公司: | 北京安信方達知識產權代理有限公司11262 | 代理人: | 楊明釗,周靖 |
| 地址: | 以色列*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 近似 寄存器 訪問 規范 代碼 執行 運行 時間 并行 | ||
發明領域
本發明總體上涉及處理器設計,并具體地涉及用于運行時代碼并行化的方法和系統。
發明背景
已經提出了用于在運行時間處動態地并行化軟件代碼的各種技術。例如,Akkary和Driscoll在1998年12月的關于微架構的第31屆年度國際研討會的會議記錄(Proceedings of the 31st Annual International Symposium on Microarchitectures)的“A Dynamic Multithreading Processor”中描述了實現單個程序的動態多線程執行的處理器架構,該文章通過引用被并入本文。
Marcuello等人在1998年的關于超級計算的第12屆國際會議的會議記錄(Proceedings of the 12th International Conference on Supercomputing)的“Speculative Multithreaded Processors”中描述了一種處理器微架構,該微架構借助于不需要編譯器或用戶支持的控制推測技術來同時執行從單個程序獲得的多個控制線程,該文章通過引用被并入本文。
Marcuello和Gonzales在1999年的關于超級計算的第13屆國際會議的會議記錄(Proceedings of the 13th International Conference on Supercomputing)的“Clustered Speculative Multithreaded Processors”中提出了在運行時間處從單線程應用中產生推測性線程的微架構,該文章通過引用被并入本文。
在2000年的第14屆國際并行與分布式處理研討會的會議記錄(Proceedings of the 14th International Parallel and Distributed Processing Symposium)的“A Quantitative Assessment of Thread-Level Speculation Techniques”(其通過引用被并入本文)中,Marcuello和Gonzales分析了不同線程推測技術的益處以及值預測、分支預測、線程初始化開銷和線程單元中的連接性的影響。
Ortiz-Arroyo和Lee在2003年的關于并行與分布式計算系統的第16屆國際會議(PDCS'03)的會議記錄(Proceedings of the 16th International Conference on Parallel and Distributed Processing Systems)的“Dynamic Simultaneous Multithreaded Architecture”中描述了被稱為動態同步多線程(DSMT)的多線程架構,該多線程架構在同步多線程處理器核上執行來自單個程序的多個線程,該文章通過引用被并入本文。
美國專利申請公布2014/0282601(其公開內容通過引用并入本文)描述了通過塊組織的源視圖數據結構進行依賴性廣播的方法。該方法包括使用全局前端接收輸入指令序列,并將指令分組以形成指令塊。多個寄存器模板(register template)用于通過用與指令塊相對應的塊號填充寄存器模板來跟蹤指令目的地和指令源,其中對應于指令塊的塊號指示在指令塊之間的相互依賴性。填充塊組織的源視圖數據結構,其中源視圖數據結構存儲與如由多個寄存器模板記錄的指令塊相對應的源。在調度指令塊中的一個塊時,將屬于該一個塊的數字廣播到與該塊有關的源視圖數據結構的列,并相應地標記該列。根據廣播更新剩余指令塊的依賴性信息。
發明概述
本文中描述的本發明的實施例提供了一種方法,其包括在處理程序代碼的指令的處理器中處理指令的第一段。使用由指令對寄存器訪問的近似規范來識別在第一段中的一個或更多個目的寄存器。目的寄存器的相應值僅在驗證該值根據近似規范對由指令的第二段讀出是有效的時才可用于該第二段。使用從第一段變得可用的值,至少部分地與第一段的處理并行地處理第二段。
在一些實施例中,處理第二段包括在值變得可用之前處理第二段中的根據近似規范不依賴于該值的至少一個指令。在實施例中,驗證目的寄存器的值對由第二段讀出是有效的包括驗證在對目的寄存器的最后寫入之前的第一段中的所有條件分支指令被解析。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于森蒂彼得塞米有限公司,未經森蒂彼得塞米有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201680020747.0/2.html,轉載請聲明來源鉆瓜專利網。





