[發(fā)明專利]對條件循環(huán)進(jìn)行向量化的處理器、方法、處理系統(tǒng)以及機(jī)器可讀介質(zhì)有效
| 申請?zhí)枺?/td> | 201711191253.1 | 申請日: | 2013-12-31 |
| 公開(公告)號: | CN107992330B | 公開(公告)日: | 2022-02-22 |
| 發(fā)明(設(shè)計)人: | T·尤里爾;E·烏爾德-阿邁德-瓦爾;B·L·托爾 | 申請(專利權(quán))人: | 英特爾公司 |
| 主分類號: | G06F9/30 | 分類號: | G06F9/30;G06F15/80 |
| 代理公司: | 上海專利商標(biāo)事務(wù)所有限公司 31100 | 代理人: | 張欣;黃嵩泉 |
| 地址: | 美國加利*** | 國省代碼: | 暫無信息 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 條件 循環(huán) 進(jìn)行 量化 處理器 方法 處理 系統(tǒng) 以及 機(jī)器 可讀 介質(zhì) | ||
指令和邏輯提供了對條件循環(huán)的矢量化。矢量擴(kuò)展指令具有:用于指定源矢量的參數(shù);用于指定條件掩碼寄存器的參數(shù);以及用于指定保持n個連續(xù)矢量元素的目的地矢量的目的地參數(shù),n個連續(xù)矢量元素中的每個矢量都具有大小為m個字節(jié)的相同可變分段大小。響應(yīng)于處理器指令,從源矢量的連續(xù)矢量元素中復(fù)制出數(shù)據(jù),擴(kuò)展入指定的目的地矢量的未掩碼矢量元素中,而不將數(shù)據(jù)復(fù)制入目的地矢量的經(jīng)掩碼矢量元素中,其中n響應(yīng)于所執(zhí)行的處理器指令而發(fā)生變化。源矢量可以是寄存器,而目的地矢量可以是在存儲器內(nèi)。一些實施例存儲條件判決的計數(shù)。其他實施例可存儲其他數(shù)據(jù),例如,目標(biāo)地址、表偏移、或處理指令的指示符,等等。
本申請是中國國家申請?zhí)枮?01310751526.9,題為“對條件循環(huán)進(jìn)行矢量化的裝置、方法、處理器、處理系統(tǒng)以及機(jī)器可讀介質(zhì)”的發(fā)明專利申請的分案申請。
技術(shù)領(lǐng)域
本公開涉及處理邏輯、微處理器以及相關(guān)的指令集體系結(jié)構(gòu)的領(lǐng)域,當(dāng)這些指令集體系結(jié)構(gòu)被處理器或其他處理邏輯所執(zhí)行時運行邏輯、數(shù)學(xué)或其他功能性操作。特別是,本公開涉及提供用于條件循環(huán)的SIMD向量化(vectorization)功能的指令和邏輯。
背景技術(shù)
目前的諸多處理器通常包括用于提供計算密集型操作但提供高度數(shù)據(jù)并行性的指令,這些指令可通過使用多種數(shù)據(jù)存儲設(shè)備的高效實現(xiàn)來使用,這些數(shù)據(jù)存儲設(shè)備諸如:單指令多數(shù)據(jù)(SIMD)向量(vector)寄存器。在SIMD執(zhí)行中,單指令同時在多個數(shù)據(jù)元素上操作。這通常是通過擴(kuò)展諸如寄存器和算術(shù)邏輯單元(ALU)之類的多個資源的寬度從而允許它們分別保持或操作多個數(shù)據(jù)元素來實現(xiàn)的。
中央處理單元(CPU)可提供這類并行硬件以支持SIMD向量處理。向量是保持若干連續(xù)數(shù)據(jù)元素的數(shù)據(jù)結(jié)構(gòu)。大小為L的向量寄存器可包含N個向量元素,該向量元素的大小為M,其中N=L/M。例如,64字節(jié)向量寄存器可被劃分為:(a)64個向量元素,每個元素保持占用1字節(jié)的數(shù)據(jù)項;(b)32個向量元素,每個元素保持占用2字節(jié)(或稱為:“字”)的數(shù)據(jù)項;(c)16個向量元素,每個元素保持占用4字節(jié)(或稱為:“雙字”)的數(shù)據(jù)項;或(d)8個向量元素,每個元素保持占用8字節(jié)(或稱為:“四字”)的數(shù)據(jù)項。
許多應(yīng)用具有大量的數(shù)據(jù)級并行性,并且能夠受益于SIMD支持。為了維持SIMD效率,一些體系結(jié)構(gòu)不僅僅允許SIMD算是操作,也允許SIMD存儲器讀取和寫入操作以及SIMD混洗和置換操作。然而,一些應(yīng)用花費了極其多的時間用于對一組稀疏位置的操作。此外,有時候執(zhí)行順序和/或條件操作,這些操作僅僅從具有SIMD操作中獲得了有限的優(yōu)勢。
例如,普林斯頓共享存儲器計算機(jī)的應(yīng)用程序庫(Princeton ApplicationRepository for Shared-Memory Computers,PARSEC)是包含有多線程程序的基準(zhǔn)套件。該套件關(guān)注于新興的工作負(fù)載,并被設(shè)計為代表了芯片多處理器的下代共享存儲器程序。PARSEC程序之一是streamcluster,用于通過尋找預(yù)定量的中間件使得每個點可被指派給其最近的中央點而解決線上群集問題。該程序花費其大部分時間用于評價開設(shè)新群集的增益。并行增益計算被一稱為pgain的函數(shù)所執(zhí)行,該函數(shù)包括如下循環(huán):
上述示例性循環(huán)示出了執(zhí)行在存儲器陣列上的條件操作,對其難以實現(xiàn)向量化,并且在允許SIMD操作的處理器體系結(jié)構(gòu)上得到了非常有限的優(yōu)勢。
目前,還沒有充分探索針對這種性能限制問題、順序和/或條件操作、以及其他瓶頸的潛在解決方案。
附圖說明
在附圖的各圖中通過示例而非限制地示出本發(fā)明。
圖1A是執(zhí)行指令以提供用于條件循環(huán)的SIMD向量化功能的系統(tǒng)的一個實施例的框圖。
圖1B是執(zhí)行指令以提供用于條件循環(huán)的SIMD向量化功能的系統(tǒng)的另一個實施例的框圖。
該專利技術(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/201711191253.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 限制條件解決方法、限制條件解決裝置、以及限制條件解決系統(tǒng)
- 制造條件設(shè)定系統(tǒng)及制造條件設(shè)定方法
- 成形條件確定方法及成形條件確定系統(tǒng)
- 成形條件設(shè)定裝置、成形條件設(shè)定方法及成形條件設(shè)定畫面
- 攝影條件設(shè)定設(shè)備、攝影條件設(shè)定方法和攝影條件設(shè)定程序
- 生理條件監(jiān)視系統(tǒng)、生理條件傳感器和生理條件儀表
- 成形條件設(shè)定裝置、成形條件設(shè)定方法及成形條件設(shè)定畫面
- 條件訪問設(shè)備
- 用于條件切換的裝置、方法、介質(zhì)和系統(tǒng)
- 基于條件分布的條件生成對抗網(wǎng)絡(luò)





