System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及數據處理領域,尤其是一種用于超長指令字架構的溢出優化方法以及相關裝置。
技術介紹
1、隨著計算機科技的日新月異,尤其是在高性能計算、嵌入式技術前沿以及數據中心核心領域,對處理器的計算效能與效率提出了前所未有的高標準與高要求。超長指令集架構(very?long?instruction?word,vliw),作為一種卓越的并行計算技術典范,憑借其指令集內并行處理的獨步優勢,極大地加速了數據處理速度,為計算性能的提升開辟了新方向。然而,超長指令集架構帶來了高度并行優勢的同時,也帶來了較高的寄存器壓力,這一局限性束縛了超長指令字架構潛能的進一步釋放。
2、相關技術中,在執行復雜運算的過程中,超長指令字常需處理多個操作數,當寄存器不足以容納時,數據溢出至內存成為必然,這不僅延長了數據訪問時間,還加劇了內存負擔,嚴重制約了系統性能。傳統調度器采用如固定優先級或隨機選取等簡單策略管理溢出,在應對多變計算需求時顯得僵化,頻繁的非必要溢出成為性能瓶頸。
3、因此,亟需設計一種技術方案,用于解決上述至少一個技術問題。
技術實現思路
1、本申請針對現有技術中存在的技術問題,提供一種用于超長指令字架構的溢出優化方法以及相關裝置,用以實現超長指令字架構的寄存器資源優化,提升資源利用效率,滿足超長指令字架構中的計算需求,提升超長指令字架構的系統性能。
2、第一方面,本申請實施例提供了一種用于超長指令字架構的溢出優化方法,該方法包括:
3、在指令預處理階
4、獲取各個虛擬寄存器的運行狀態數據;其中,所述運行狀態數據至少包括:各個虛擬寄存器的數據項生命周期、在所述目標指令中的重用頻率、以及在所述目標指令中的預測使用時間;
5、根據所述運行狀態數據動態獲取各個虛擬寄存器的溢出優先級;其中,預測使用時間距離當前時刻越遠,虛擬寄存器對應的溢出優先級越高;
6、根據所述溢出優先級、以及虛擬寄存器與物理寄存器之間的映射關系,執行所述目標指令的溢出優化操作,以將所述目標指令關聯的目標數據從當前所處的物理寄存器移動到對應的內存空間中進行臨時存儲。
7、第二方面,本申請實施例提供了一種用于超長指令字架構的溢出優化裝置,其中
8、解析單元,被配置為在指令預處理階段,遍歷指令集,對目標指令進行解析,以識別所述目標指令所調用的各個虛擬寄存器;其中,各個虛擬寄存器至少包括:讀寄存器和存寄存器;
9、獲取單元,被配置為獲取各個虛擬寄存器的運行狀態數據;其中,所述運行狀態數據至少包括:各個虛擬寄存器的數據項生命周期、在所述目標指令中的重用頻率、以及在所述目標指令中的預測使用時間;
10、優先級單元,被配置為根據所述運行狀態數據動態獲取各個虛擬寄存器的溢出優先級;其中,預測使用時間距離當前時刻越遠,虛擬寄存器對應的溢出優先級越高;
11、執行單元,被配置為根據所述溢出優先級、以及虛擬寄存器與物理寄存器之間的映射關系,執行所述目標指令的溢出優化操作,以將所述目標指令關聯的目標數據從當前所處的物理寄存器移動到對應的內存空間中進行臨時存儲。
12、第三方面,本申請實施例提供了一種電子設備,所述電子設備包括:
13、至少一個處理器、存儲器和輸入輸出單元;
14、其中,所述存儲器用于存儲計算機程序,所述處理器用于調用所述存儲器中存儲的計算機程序來執行第一方面的用于超長指令字架構的溢出優化方法。
15、第四方面,提供了一種計算機可讀存儲介質,其包括指令,當其在計算機上運行該指令時,使得計算機執行第一方面的用于超長指令字架構的溢出優化方法。
16、本申請的有益效果是:提供了一種用于超長指令字架構的溢出優化方法以及相關裝置。該技術方案中,首先,在指令預處理階段,遍歷指令集,對目標指令進行解析,以識別所述目標指令所調用的各個虛擬寄存器。其中,各個虛擬寄存器至少包括:讀寄存器和存寄存器。進而,獲取各個虛擬寄存器的運行狀態數據。其中,所述運行狀態數據至少包括:各個虛擬寄存器的數據項生命周期、在所述目標指令中的重用頻率、以及在所述目標指令中的預測使用時間。接著,根據所述運行狀態數據動態獲取各個虛擬寄存器的溢出優先級。其中,預測使用時間距離當前時刻越遠,虛擬寄存器對應的溢出優先級越高。最終,根據所述溢出優先級、以及虛擬寄存器與物理寄存器之間的映射關系,執行所述目標指令的溢出優化操作,以將所述目標指令關聯的目標數據從當前所處的物理寄存器移動到對應的內存空間中進行臨時存儲。
17、本申請技術方案,通過動態配置各個虛擬寄存器的溢出優先級,根據溢出優先級、以及虛擬寄存器與物理寄存器之間的映射關系,執行目標指令的溢出優化操作,將目標指令關聯的目標數據從當前所處的物理寄存器移動到對應的內存空間中進行臨時存儲,從而,實現超長指令字架構的寄存器資源優化,提升資源利用效率,滿足超長指令字架構中的計算需求,提升超長指令字架構的系統性能。
本文檔來自技高網...【技術保護點】
1.一種用于超長指令字架構的溢出優化方法,其特征在于,所述方法包括:
2.根據權利要求1所述的溢出優化方法,其特征在于,所述根據所述溢出優先級、以及虛擬寄存器與物理寄存器之間的映射關系,執行所述目標指令的溢出優化操作之后,還包括:
3.根據權利要求1所述的溢出優化方法,其特征在于,所述對目標指令進行解析,以識別所述目標指令所調用的各個虛擬寄存器,包括:
4.根據權利要求3所述的溢出優化方法,其特征在于,所述基于所述寄存器調用順序和所述數據依賴關系為寄存器分別配置對應的編號,得到各個虛擬寄存器,包括:
5.根據權利要求1所述的溢出優化方法,其特征在于,所述獲取各個虛擬寄存器的運行狀態數據,包括:
6.根據權利要求5所述的溢出優化方法,其特征在于,所述基于各個虛擬寄存器每次被引用的時間點,確定各個虛擬寄存器在所述目標指令中的預測使用時間,包括:
7.根據權利要求6所述的溢出優化方法,其特征在于,基于所述指令集的模擬執行數據、以及各個虛擬寄存器每次被引用的時間點,預測各個虛擬寄存器下一次被引用的指令位置之后,還包括
8.根據權利要求1所述的溢出優化方法,其特征在于,所述根據所述運行狀態數據動態獲取各個虛擬寄存器的溢出優先級,包括:
9.根據權利要求8所述的溢出優化方法,其特征在于,所述根據所述運行狀態數據動態獲取各個虛擬寄存器的溢出優先級之后,還包括:
10.根據權利要求9所述的溢出優化方法,其特征在于,所述基于所述實時壓力預測結果,采用二叉堆的數據結構進行溢出優先級排序之后,還包括:
11.根據權利要求1所述的溢出優化方法,其特征在于,所述根據所述溢出優先級、以及虛擬寄存器與物理寄存器之間的映射關系,執行所述目標指令的溢出優化操作,包括:
12.一種用于超長指令字架構的溢出優化裝置,其特征在于,所述裝置包括以下單元,其中,
13.一種電子設備,其特征在于,包括:
14.一種計算機可讀存儲介質,其特征在于,所述存儲介質中存儲有計算機軟件程序,所述計算機軟件程序被處理器執行時實現如權利要求1-11任一項所述的溢出優化方法。
15.一種芯片,其特征在于,所述芯片中加載有計算機軟件程序和/或硬件單元,所述計算機軟件程序和/或硬件單元用于實現如權利要求1-11任一項所述的溢出優化方法。
...【技術特征摘要】
1.一種用于超長指令字架構的溢出優化方法,其特征在于,所述方法包括:
2.根據權利要求1所述的溢出優化方法,其特征在于,所述根據所述溢出優先級、以及虛擬寄存器與物理寄存器之間的映射關系,執行所述目標指令的溢出優化操作之后,還包括:
3.根據權利要求1所述的溢出優化方法,其特征在于,所述對目標指令進行解析,以識別所述目標指令所調用的各個虛擬寄存器,包括:
4.根據權利要求3所述的溢出優化方法,其特征在于,所述基于所述寄存器調用順序和所述數據依賴關系為寄存器分別配置對應的編號,得到各個虛擬寄存器,包括:
5.根據權利要求1所述的溢出優化方法,其特征在于,所述獲取各個虛擬寄存器的運行狀態數據,包括:
6.根據權利要求5所述的溢出優化方法,其特征在于,所述基于各個虛擬寄存器每次被引用的時間點,確定各個虛擬寄存器在所述目標指令中的預測使用時間,包括:
7.根據權利要求6所述的溢出優化方法,其特征在于,基于所述指令集的模擬執行數據、以及各個虛擬寄存器每次被引用的時間點,預測各個虛擬寄存器下一次被引用的指令位置之后,還包括:
8.根據權利要求1所述的溢出...
【專利技術屬性】
技術研發人員:楊龔軼凡,朱國梁,闖小明,楊添淇,胡光耀,趙宇軒,
申請(專利權)人:中昊芯英杭州科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。