[發(fā)明專利]用于選擇包括指令序列的指令的系統(tǒng)和方法有效
| 申請?zhí)枺?/td> | 201580052960.5 | 申請日: | 2015-07-24 |
| 公開(公告)號: | CN106796528B | 公開(公告)日: | 2021-08-24 |
| 發(fā)明(設(shè)計)人: | M·阿布達拉 | 申請(專利權(quán))人: | 英特爾公司 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455 |
| 代理公司: | 上海專利商標事務(wù)所有限公司 31100 | 代理人: | 何焜 |
| 地址: | 美國加利*** | 國省代碼: | 暫無信息 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 用于 選擇 包括 指令 序列 系統(tǒng) 方法 | ||
用于不可知的運行時架構(gòu)的系統(tǒng)。該系統(tǒng)包括系統(tǒng)仿真/虛擬化轉(zhuǎn)換器、應(yīng)用代碼轉(zhuǎn)換器、以及轉(zhuǎn)換器,其中系統(tǒng)仿真/虛擬化轉(zhuǎn)換器和應(yīng)用代碼轉(zhuǎn)換器實現(xiàn)系統(tǒng)仿真進程,并且其中系統(tǒng)轉(zhuǎn)換器實現(xiàn)用于執(zhí)行來自訪客鏡像的代碼的系統(tǒng)和應(yīng)用轉(zhuǎn)換進程,其中系統(tǒng)轉(zhuǎn)換器或系統(tǒng)仿真器。該系統(tǒng)進一步包括運行提前運行時訪客指令轉(zhuǎn)換/解碼過程、以及其中從指令序列中的訪客分支的目標預(yù)取訪客代碼的預(yù)取過程。
本申請要求共同待審并且共同轉(zhuǎn)讓的由Mohammad A. Abdallah于2014年7月25日提交的名稱為“A RUNTIME ARCHITECTURE FOR EFFICIENTLY OPTIMIZING AND EXECUTINGGUEST CODE AND CONVERTING TO NATIVE CODE(用于高效地優(yōu)化和執(zhí)行訪客代碼并將其轉(zhuǎn)換為本機代碼的運行時架構(gòu))”的美國臨時專利申請序列號62/029383的權(quán)益,該申請通過引用整體結(jié)合于此。
發(fā)明領(lǐng)域
本發(fā)明總地涉及數(shù)字計算機系統(tǒng),更具體地涉及用于選擇包括指令序列的指令的系統(tǒng)和方法。
發(fā)明背景
處理器被要求處理多個從屬的或完全獨立的任務(wù)。這些處理器的內(nèi)部狀態(tài)通常由在程序執(zhí)行的每個特定瞬間可能保存不同的值的寄存器組成。在程序執(zhí)行的每個瞬間,內(nèi)部狀態(tài)鏡像被稱為處理器的架構(gòu)狀態(tài)。
當(dāng)將代碼執(zhí)行切換到運行另一功能(例如,另一線程、進程或程序)時,則必須保存機器/處理器的狀態(tài),使得新功能可以利用內(nèi)部寄存器來建立新功能的新狀態(tài)。當(dāng)終止新功能時,則可以丟棄其狀態(tài),并且將恢復(fù)先前上下文的狀態(tài)并且執(zhí)行恢復(fù)。這種切換進程被稱為上下文切換,并且通常包括10個或數(shù)百個循環(huán),尤其在采用大量寄存器(例如,64、128、256)和/或亂序執(zhí)行的現(xiàn)代架構(gòu)中。
在知曉線程的硬件架構(gòu)中,硬件支持用于有限數(shù)量的硬件支持的線程的多個上下文狀態(tài)是常見的。在這種情形下,硬件為每個支持的線程復(fù)制所有架構(gòu)狀態(tài)元素。這消除了當(dāng)執(zhí)行新線程時對上下文切換的需要。然而,這仍然有許多缺點,即為在硬件中支持的每個附加的線程復(fù)制所有架構(gòu)狀態(tài)元素(即,寄存器)的面積、功率、以及復(fù)雜性。此外,如果軟件線程的數(shù)量超過被明確地支持的硬件線程的數(shù)量,則仍然必須執(zhí)行上下文切換。
隨著在要求大量線程的細粒度的基礎(chǔ)上需要并行性,這變得常見。具有復(fù)制上下文狀態(tài)硬件存儲的硬件知曉線程的架構(gòu)無助于非線程的軟件代碼,并且只為線程軟件減少上下文切換的數(shù)量。然而,這些線程通常為粗粒度的并行性構(gòu)建,并且導(dǎo)致啟動和同步的繁重的軟件開銷,使得細粒度的并行性(例如功能調(diào)用和循環(huán)并行執(zhí)行)不具有高效的線程啟動/自動生成。描述的此類開銷伴隨著此類代碼使用最新編譯器的自動并行化或用于非顯示地/容易地并行的/線程化軟件代碼的用戶并行化技術(shù)的困難。
發(fā)明概述
在一個實施例中,本發(fā)明實現(xiàn)為用于不可知的運行時架構(gòu)的系統(tǒng)。該系統(tǒng)包括系統(tǒng)仿真/虛擬化轉(zhuǎn)換器、應(yīng)用代碼轉(zhuǎn)換器、以及轉(zhuǎn)換器,其中系統(tǒng)仿真/虛擬化轉(zhuǎn)換器和應(yīng)用代碼轉(zhuǎn)換器實現(xiàn)系統(tǒng)仿真進程,并且其中系統(tǒng)轉(zhuǎn)換器實現(xiàn)用于執(zhí)行來自訪客鏡像的代碼的系統(tǒng)和應(yīng)用轉(zhuǎn)換進程,其中系統(tǒng)轉(zhuǎn)換器或系統(tǒng)仿真器。該系統(tǒng)進一步包括運行提前運行時訪客指令轉(zhuǎn)換/解碼過程、以及其中從指令序列中的訪客分支的目標預(yù)取訪客代碼的預(yù)取過程。
以上是概述并且因此必然地包括對細節(jié)的簡化、概括和省略;因此,本領(lǐng)域技術(shù)人員將理解概述僅是說明性的并且無論如何不旨在是限制性的。僅由權(quán)利要求書定義的本發(fā)明的其他方面、創(chuàng)造性特征、以及優(yōu)勢將在以下陳述的非限制性的詳細描述中變得顯而易見。
附圖說明
本發(fā)明作為示例而非限制在所附附圖中示出,在附圖中,相似的附圖標記指代相似的元件。
圖1示出根據(jù)本發(fā)明的一個實施例的架構(gòu)不可知的運行時系統(tǒng)的概覽示圖。
圖2示出根據(jù)本發(fā)明的一個實施例的描繪了硬件加速的轉(zhuǎn)換/JIT層的示圖。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于英特爾公司,未經(jīng)英特爾公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201580052960.5/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





