《多核平台下的高效執行緒級猜測執行機制研究》是依託中國人民解放軍國防科技大學,由沈立擔任項目負責人的面上項目。
基本介紹
- 中文名:多核平台下的高效執行緒級猜測執行機制研究
- 項目類別:面上項目
- 項目負責人:沈立
- 依託單位:中國人民解放軍國防科技大學
中文摘要,結題摘要,
中文摘要
如何簡潔、高效地利用處理器中集成的豐富計算資源,是多核體系結構帶來的一個重要挑戰。為解決這一問題,必須將編程模型、運行時環境及體系結構有機地結合在一起。儘管執行緒級猜測執行(Thread Level Speculation,TLS)機制具備解決該問題的足夠潛力,但由於缺乏體系結構和運行時環境支撐,TLS的自身開銷又比較大,嚴重製約了其實際效果。本項目將從深入分析TLS機制自身的特點入手,研究並提出高效的TLS模型,以及多核體系結構和運行時環境對TLS的高效支撐機制,在此基礎上總結TLS編程模型,設計編譯框架,自動將串列C/C++代碼或二進制代碼轉換為多執行緒代碼,並獲得有效的性能提升。本項目研究將在軟硬協同的TLS模型、高效支持TLS的體系結構和運行時環境、面向TLS的編譯技術和執行緒劃分策略等方面取得創新研究成果。這些成果可以直接套用於多核乃至眾核平台設計,具有重要的理論意義和實際套用價值。
結題摘要
與傳統的非猜測多執行緒編程模型相比,執行緒級猜測執行機制既能提供簡潔的並行編程模型,又能有效開發出應用程式特別是串列套用中的執行緒級並行。然而,由於缺乏處理器體系結構和運行時環境的有效支持,現有的TLS機制存在著不少缺陷,如自身開銷大、誤猜率高等。為了解決這些問題,本課題在深入分析現有TLS系統和多核處理器體系結構特徵的基礎上,研究支持TLS的多核體系結構、高效的TLS編程模型和最佳化手段。本課題取得的研究成果主要有:1、提出了基於猜測變數生命周期的TLS系統設計空間,明確了TLS系統的設計方向;為多核處理器設計了一種基於Local Memory的猜測數據快取,以實現高效的猜測變數管理與共享;提出了基於硬體計數器的多核處理器功耗模型,以評估TLS系統的功耗;2、提出了一種高效的TLS編程模型,HEUSPEC,並基於LLVM實現了HEUSPEC編譯器,在確保獲得較高性能加速比的同時,大大降低了開發多執行緒程式的複雜度;3、提出了面向TLS的運行時機制以及最佳化策略,並在HEUSPEC系統中實現。上述成果已成功地套用在目前流行的商用多核處理器以及國產的飛騰系列多核處理器平台上。此外,為了將上述成果套用於異構多核處理器平台,本課題還研究了並行套用在異構融合多處理器平台的運行特徵。