TWI721999B - 向量長度查詢指令 - Google Patents
向量長度查詢指令 Download PDFInfo
- Publication number
- TWI721999B TWI721999B TW105122825A TW105122825A TWI721999B TW I721999 B TWI721999 B TW I721999B TW 105122825 A TW105122825 A TW 105122825A TW 105122825 A TW105122825 A TW 105122825A TW I721999 B TWI721999 B TW I721999B
- Authority
- TW
- Taiwan
- Prior art keywords
- vector
- value
- proportional
- length
- vector length
- Prior art date
Links
- 239000013598 vector Substances 0.000 title claims abstract description 175
- 238000000034 method Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims 1
- 230000001419 dependent effect Effects 0.000 abstract 1
- 230000004044 response Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/30149—Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/3001—Arithmetic instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
Abstract
本案介紹支援向量處理操作的資料處理系統2,該資料處理系統2使用比例向量長度查詢指令。比例向量長度查詢指令返回一結果,該結果依據向量中之元素數目,以獲得可變向量元素大小,該大小由指令規定並乘以該指令規定的比例值。比例向量長度查詢指令可具有計數指令、遞增指令或遞減指令形式。指令可包括模式約束,該模式約束對部分結果值應用諸如模數(M)或2的乘冪之約束,該部分結果值表示針對指令規定的暫存器元素大小而提供的向量元素數目。
Description
本揭示案係關於資料處理系統領域。更特定而言,本揭示案係關於支援向量處理的資料處理系統。
已知提供支援處理向量運算元的資料處理系統,該等向量運算元包括複數個向量元素。向量暫存器內的位元數目通常由相關處理器架構定義。向量暫存器中之位元數目可在不同大小的向量元素之間劃分,從而使得給定向量暫存器提供不同數目之向量元素。
根據本揭示案之至少一些實施例,提供用於處理資料的設備,該設備包括處理電路系統以執行向量處理操作;及解碼器電路系統以解碼程式指令來產生控制信號,以控制該處理電路系統來執行該等向量處理操作;其中該解碼器電路系統回應於比例向量長度查詢指令以控制該處理電路系統,以返回取決於向量長度乘以比例值而定的結果值,該設備在執行該向量處理操作時使用該向量長度,且該比例值由該比例向量長度查詢指令規定。
根據本揭示案之至少一些實施例,提供用於處理資料的設備,該設備包括用於執行向量處理操作的處理手段;及解碼器手段以用於解碼程式指令來產生控制信號,以控制該處理電路系統以執行該等向量處理操作;其中該解碼器手段回應於比例向量長度查詢指令以控制該處理手段,以返回取決於向量長度乘以比例值而定的結果值,該設備在執行該向量處理操作時使用該向量長度,且該比例值由該比例向量長度查詢指令規定。
根據本揭示案之至少一些實施例,提供處理資料的方法,該方法包括解碼比例向量長度查詢指令以控制處理電路系統,以返回取決於向量長度乘以比例值的結果值,該向量長度在執行向量處理操作時使用,且該比例值由該比例向量長度查詢指令規定。
本揭示案之上述及其他目標、特徵,及優勢將在說明性實施例之以下詳細說明中顯而易見,該詳細說明將結合附圖閱讀。
第1圖示意地圖示資料處理系統2,該資料處理系統包括耦接至記憶體6的處理器4,該記憶體6儲存資料值8及程式指令10。處理器4包括指令擷取單元12以用於從記憶體6擷取程式指令10並向解碼器電路系統14供應擷取程式指令。解碼器電路系統14解碼所擷取的程式指令且產生控制信號16以控制向量處理電路系統18,以對儲存在向量暫存器電路系統20內的向量暫存器執行向量處理操作,該操作如解碼的向量指令所規定。將瞭解,實際上,處理器4將通常包含更多電路元件,且該等圖式中已省略該等電路元件。
第1圖亦示意地圖示示例性向量暫存器Zi
,在此實例中,該向量暫存器具有256之向量位元大小。向量暫存器Zi
由16個向量元素a0
-a15
形成。該等向量元素中之每一者具有16位元之向量位元大小,因此,向量暫存器Zi
內的向量元素數目是16。向量元素大小是可由被解碼的向量指令規定之變數。例如,向量指令可經編碼以規定向量元素為位元組、半字、字或雙字(分別為8、16、32、64位元)。依據向量元素位元大小,向量暫存器Zi
內的向量元素數目將改變。由此,對於由256位元形成的向量暫存器Zi
而言,此可支援十六個16位元向量元素、八個32位元向量元素或四個64位元向量元素。
處理器4的給定實施方式將包含向量暫存器電路系統20,該電路系統支援給定位元大小的向量暫存器Zi。然而,使用同一指令集架構的處理器4的不同實施方式可支援不同大小之向量暫存器,例如512位元、384位元、1024位元,等等。
作為賦能包括向量指令的程式碼以適應提供不同大小的向量暫存器Zi
而無需任何或顯著修改的向量暫存器電路系統20的方式,提供有一或更多個比例向量長度查詢指令。該等比例向量長度查詢指令返回取決於向量中元素數目的結果值,以獲得可變的向量元素大小(例如位元組、半字、字或雙字),該向量元素大小由比例向量長度查詢指令規定並乘以由比例向量長度查詢指令規定之比例值。該種比例向量長度查詢指令能夠返回一結果,該結果可慮及實施方式之特定向量暫存器大小,且亦慮及可由正在實施的向量碼提供的程式迴路滾動的程度。比例值可以恆定整數值的形式提供,該恆定整數值編碼在比例向量長度查詢指令內(例如指令內的立即值(immediate value))。
第2圖示意地圖示多種不同形式之比例向量長度查詢指令。特定而言,向量長度查詢指令的類型可為計數指令、遞增指令或遞減指令。作為比例向量長度查詢指令的更多類型之指令亦有可能。比例向量長度查詢指令額外規定向量元素大小,將決定相對於該大小的結果值。因此,向量元素大小可為位元組B、半字H、字W或雙字D。比例向量長度查詢指令亦規定純量暫存器Xd
,該純量暫存器可充當對於指令的輸入運算元值的來源,並充當待寫入的結果值目的地。
第2圖中圖示的比例向量長度查詢指令內最終兩個參數是一欄位,該欄位規定模式約束,該模式約束應用於由處理設備所使用的向量長度,且可規定依據該模式約束返回的比例向量長度查詢指令之結果值。向量模式約束可採用多種不同形式。約束可為例如設備提供的最大值是規定值M的倍數,例如向量元素數目的值被約束為值M的倍數(模數(M))。約束模式的另一實例是針對支援的向量元素數目所返回的最大值應約束為2的乘冪,例如2、4、8、16、32,等等。約束模式的另一實例是超出向量暫存器Zi
的實體大小,不對支援的元素數目最大值應用約束。因此,如若向量暫存器長度是256位元,且元素大小是16位元,則以此方式,利用「All」約束,將基於向量元素數目為16返回結果值。
由比例向量長度查詢指令規定的最終參數是比例值。此值可為自身具有立即值的比例向量長度查詢指令內編碼的恆定整數值。儘管此比例值可能具有多種值,已發現1至8(包含1及8)範圍中之比例值能夠支援大部分程度之迴路展開,該迴路展開通常在保存用以編碼比例向量長度查詢指令的指令位元空間時被發現。
第3圖示意地圖示結果值,該等結果值可被返回以用於某些示例性比例向量長度查詢指令。圖示之列是向量位元大小(亦即向量暫存器Zi
的位元大小)、向量元素位元大小(例如位元組、半字、字、雙字)、向量模式約束(例如A、模數(M)、2的乘冪,等等)、比例值(例如指令自身內編碼的恆定值,範圍自1至8(包含1及8)),及指令類型(例如計數、遞增、遞減)。相對於計數指令,輸入值可被視為「0」,且可為輸入暫存器Xd
在遞增及遞減指令的情況下所提供的值。
考慮第3圖中圖示的第一行,此行規定向量位元大小128。向量元素位元大小為8。因此,無約束的最大向量元素計數為16。此行的模式約束是「All」,且相應地此對應於無約束模式。第一行的比例是「1」,且因此結果不按比例變更。指令類型是計數,且因此,提供向量暫存器內具有位元組大小的向量元素的數目簡單計數且該計數等於16。
更複雜的實例在第五行給定。在此情況中,向量位元大小是256,且向量元素位元大小是32。此指示所支援的向量元素的無約束數目為8。然而,模式約束是應為支援數目的向量元素數目應為3的倍數。因此,模式約束將被視作所支援最大值的向量元素數目減少至6。第五行的比例值是2,且指令類型是計數,且由此,結果值是模式約束的結果的兩倍,亦即12。
又一實例在第十行中給定。在此行中,向量位元大小是384,且向量元素位元大小是16。此可能指示向量暫存器支援的原始向量元素數目為24。然而,此行中應用的模式約束是所支援的向量計數應為2的乘冪,且由此,所支援的位元大小為16的向量元素最大數目被視作16。應用比例因數2。因此,經縮放後的部分結果值是32。指令類型是遞增類型比例向量長度查詢指令,且保持在定標器暫存器Xd
內的對於遞增的輸入值是48。此產生結果值(遞增值)80。
當此比例向量長度查詢指令是比例計數指令時,則此指令返回一計數值,此計數值取決於所支援的元素數目乘以比例值。當比例向量長度查詢指令是比例遞增指令時,則此指令返回一遞增結果值,該結果值取決於將遞增的輸入值(藉由取決於向量位元大小、向量元素位元大小、模式約束及比例值而決定的值而遞增)。以類似方式,當比例向量長度查詢指令是比例遞減指令時,則此指令返回一遞減結果值,該遞減結果值取決於待遞減的輸入值。
第4圖圖示用於回應於比例向量長度查詢指令而決定結果值的電路系統的示例性實施方式。此實施方式具有查找表之形式,該表包括表位址解碼器22,該解碼器索引至結果值表24中。供應來自比例向量長度查詢指令的參數(欄位)作為對表解碼器22的輸入。該等欄位包括元素大小(2位元)、應用的約束模式(5位元),及應用的比例值(3位元)。表位址解碼器22針對特定實施方式,亦即針對實施的特定向量長度具有固定形式。表位址解碼器22回應於供應至其的輸入信號而產生1熱輸出,以從結果值表24中選擇一結果值,如若比例向量長度查詢指令分別是比例遞增指令或比例遞減指令,則此結果值隨後被供應至遞增或遞減電路系統(加法器或減法器)。
第5圖是一流程圖,該圖示意地圖示處理比例向量長度查詢指令的邏輯流程。將理解,實際上,該種處理通常同時執行,且第5圖中圖示的個別步驟實際上可同時執行。在步驟26中,處理等待直至收到比例向量長度查詢指令。然後,步驟28決定與規定向量元素大小相關的向量暫存器實施方式所支援的向量元素的原始最大數目。步驟30應用比例向量長度查詢指令所規定的約束模式(如有)。步驟32對藉由在步驟26中應用約束模式所決定的部分結果進行比例縮放。如若指令類型是計數指令,然後步驟36將計數結果寫入目的地暫存器。如若指令類型是遞增,則在步驟38中,使藉由在步驟32中決定的遞增值已保持的目的地暫存器值遞增,且將遞增結果寫入目的地暫存器。如若在步驟34中決定指令類型是遞減,則在步驟40中,藉由在步驟32中計算的遞減值而使目的地暫存器值遞減,且將結果寫入目的地暫存器。
第6圖圖示可使用的虛擬機實施方式。儘管前文所述實施例根據用於操作特定處理硬體的設備及方法來實施本發明,該硬體支援本案相關技術,但亦有可能提供硬體裝置的所謂虛擬機的實施方式。該等虛擬機實施方式在主機處理機530上執行,該主機處理機530在支援虛擬機程式510的主機作業系統520上執行。通常,需要強大的處理器來提供虛擬機實施方式,該虛擬機實施方式以合理的速度執行,但該種方法在某些環境中合乎情理,如在出於相容性或再使用原因而需要執行源於另一處理器的碼的情況下。虛擬機程式510向應用程式500提供應用程式介面,該介面與將由實際硬體提供的應用程式介面相同,該實際硬體是正由虛擬機程式510模型化的裝置。由此,包括對上述記憶體存取的控制的程式指令可藉由使用虛擬機程式510而自應用程式500內執行,以對該等程式指令與虛擬機硬體的互動進行模型化。
儘管本文已描述特定實施例,但將瞭解,本發明並非限定於彼等實施例,且可在本發明之範疇內進行諸多修改及添加。例如,可在不背離本發明之範疇的前提下,以下附屬請求項之特徵可與獨立請求項之特徵組成進行多種組合。
2‧‧‧資料處理系統
4‧‧‧處理器
6‧‧‧記憶體
8‧‧‧資料值
10‧‧‧程式指令
12‧‧‧指令擷取單元
14‧‧‧解碼器電路系統
16‧‧‧控制信號
18‧‧‧向量處理電路系統
20‧‧‧向量暫存器電路系統
22‧‧‧表位址解碼器
24‧‧‧結果值表
26‧‧‧步驟
28‧‧‧步驟
30‧‧‧步驟
32‧‧‧步驟
34‧‧‧步驟
36‧‧‧步驟
38‧‧‧步驟
40‧‧‧步驟
500‧‧‧應用程式
510‧‧‧虛擬機程式
520‧‧‧主機作業系統
530‧‧‧主機處理機
第1圖示意地圖示支援向量處理的資料處理系統;
第2圖示意地圖示複數個不同形式之比例向量長度查詢指令;
第3圖示意地圖示第2圖中不同類型之比例向量長度查詢指令之特性的實例;
第4圖示意地圖示查找表實施方式,用於回應於比例向量長度查詢指令而產生結果值;
第5圖是一流程圖,該圖示意地圖示比例向量長度查詢指令之特性;及
第6圖示意地圖示虛擬機實施方式。
國內寄存資訊 (請依寄存機構、日期、號碼順序註記) 無
國外寄存資訊 (請依寄存國家、機構、日期、號碼順序註記) 無
(請換頁單獨記載) 無
26‧‧‧步驟
28‧‧‧步驟
30‧‧‧步驟
32‧‧‧步驟
34‧‧‧步驟
36‧‧‧步驟
38‧‧‧步驟
40‧‧‧步驟
Claims (15)
- 一種用於處理資料之設備,該設備包括:處理電路系統,用以執行向量處理操作;及解碼器電路系統,用以解碼程式指令來產生控制信號以控制該處理電路系統,以執行該等向量處理操作;其中該解碼器電路系統可回應於規定一向量元素大小和一比例值的一比例向量長度查詢指令以控制該處理電路系統,以返回一結果值,該結果值取決於在一預定向量長度下的該向量元素大小的一向量元素數目乘以該比例值,該預定向量長度表示由該設備使用的一向量暫存器的一長度。
- 如請求項1所述之設備,其中該比例值是該比例向量長度查詢指令內編碼的一恆定整數值。
- 如請求項1所述之設備,其中該比例值處於自1延伸至8的一範圍中,該範圍包括1及8。
- 如請求項1所述之設備,其中該向量元素大小選自8位元、16位元、32位元及64位元中之一者。
- 如請求項1所述之設備,其中該比例向量長度查詢指令包括一或更多個其他參數,且由該處理電路系統返回的該結果值取決於該一或更多個其他參 數。
- 如請求項5所述之設備,其中該一或更多個其他參數包括一向量模式約束,在該向量模式約束的限制下決定由該設備使用的該向量長度。
- 如請求項6所述之設備,其中該向量模式約束規定該元素數目是以下各者中之一者:由該設備提供的一最大值,該最大值亦是一規定值M的一倍數;由該設備提供的一最大值,該最大值亦是2的一乘冪;及由該設備提供的一最大值。
- 如請求項1所述之設備,其中該比例向量長度查詢指令是一比例計數指令,該比例計數指令返回一計數結果值,該結果值取決於該元素數目乘以該比例值。
- 如請求項1所述之設備,其中該比例向量長度查詢指令是一比例遞增指令,該比例遞增指令返回一遞增結果值,該遞增結果值取決於將遞增的一輸入值。
- 如請求項1所述之設備,其中該比例向量長度查詢指令是一比例遞減指令,該比例遞減指令返回一遞減結果值,該遞減結果值取決於將遞減的一輸 入值。
- 如請求項1所述之設備,其中該向量處理電路系統包括一查找表,該查找表取決於該比例值而定址,以至少部分地決定該結果值。
- 如請求項5所述之設備,其中該查找表取決於該一或更多個其他參數而定址。
- 一種用於處理資料之設備,該設備包括:處理手段,用於執行向量處理操作;及解碼手段,用以解碼程式指令來產生控制信號以控制該處理手段,以執行該向量處理操作;其中該解碼器手段可回應於規定一向量元素大小和一比例值的一比例向量長度查詢指令以控制該處理手段,以返回一結果值,該結果值取決於在一預定向量長度下的該向量元素大小的一向量元素數目乘以該比例值,該預定向量長度表示由該設備使用的一向量暫存器的一長度。
- 一種處理資料的方法,該方法包括以下步驟:解碼規定一向量元素大小和一比例值的一比例向量長度查詢指令,以控制處理電路系統,以返回一結果值,該結果值取決於在一預定向量長度下的該向量元素大小的一向量元素數目乘以該比例值,該預定向 量長度表示由一設備使用的一向量暫存器的一長度。
- 一種電腦程式,儲存在一非暫時性儲存媒體上以用於控制一電腦以提供一虛擬機執行環境,該虛擬機執行環境對應於如請求項1所述之設備。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP15386026.7 | 2015-07-31 | ||
EP15386026.7A EP3125109B1 (en) | 2015-07-31 | 2015-07-31 | Vector length querying instruction |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201717051A TW201717051A (zh) | 2017-05-16 |
TWI721999B true TWI721999B (zh) | 2021-03-21 |
Family
ID=54140382
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105122825A TWI721999B (zh) | 2015-07-31 | 2016-07-20 | 向量長度查詢指令 |
Country Status (8)
Country | Link |
---|---|
US (1) | US11314514B2 (zh) |
EP (1) | EP3125109B1 (zh) |
JP (1) | JP6818010B2 (zh) |
KR (1) | KR102586258B1 (zh) |
CN (1) | CN107851022B (zh) |
IL (1) | IL256403B (zh) |
TW (1) | TWI721999B (zh) |
WO (1) | WO2017021055A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170046168A1 (en) * | 2015-08-14 | 2017-02-16 | Qualcomm Incorporated | Scalable single-instruction-multiple-data instructions |
US11269636B2 (en) * | 2019-05-27 | 2022-03-08 | Texas Instmments Incorporated | Look-up table write |
CN110333857B (zh) * | 2019-07-12 | 2023-03-14 | 辽宁工程技术大学 | 一种基于约束规划的自定义指令自动识别方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101083525A (zh) * | 2005-12-30 | 2007-12-05 | 英特尔公司 | 密码处理单元以及乘法器 |
TW201020805A (en) * | 2008-10-08 | 2010-06-01 | Advanced Risc Mach Ltd | Apparatus and method for performing SIMD multiply-accumulate operations |
US7917302B2 (en) * | 2000-09-28 | 2011-03-29 | Torbjorn Rognes | Determination of optimal local sequence alignment similarity score |
US20140207838A1 (en) * | 2011-12-22 | 2014-07-24 | Klaus Danne | Method, apparatus and system for execution of a vector calculation instruction |
US20140289502A1 (en) * | 2013-03-19 | 2014-09-25 | Apple Inc. | Enhanced vector true/false predicate-generating instructions |
TW201439902A (zh) * | 2012-12-27 | 2014-10-16 | Nvidia Corp | 指令轉譯錯誤偵測 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6133547A (ja) | 1984-07-25 | 1986-02-17 | Fujitsu Ltd | ベクトル・レジスタのオ−バフロ−情報通知方式 |
US4745547A (en) | 1985-06-17 | 1988-05-17 | International Business Machines Corp. | Vector processing |
US5537606A (en) * | 1995-01-31 | 1996-07-16 | International Business Machines Corporation | Scalar pipeline replication for parallel vector element processing |
US6788303B2 (en) * | 2001-02-27 | 2004-09-07 | 3Dlabs Inc., Ltd | Vector instruction set |
US20040073773A1 (en) * | 2002-02-06 | 2004-04-15 | Victor Demjanenko | Vector processor architecture and methods performed therein |
US9170812B2 (en) * | 2002-03-21 | 2015-10-27 | Pact Xpp Technologies Ag | Data processing system having integrated pipelined array data processor |
US8966223B2 (en) * | 2005-05-05 | 2015-02-24 | Icera, Inc. | Apparatus and method for configurable processing |
CN101535945A (zh) * | 2006-04-25 | 2009-09-16 | 英孚威尔公司 | 全文查询和搜索系统及其使用方法 |
US8555034B2 (en) * | 2009-12-15 | 2013-10-08 | Oracle America, Inc. | Execution of variable width vector processing instructions |
US10175990B2 (en) * | 2009-12-22 | 2019-01-08 | Intel Corporation | Gathering and scattering multiple data elements |
US20110158310A1 (en) * | 2009-12-30 | 2011-06-30 | Nvidia Corporation | Decoding data using lookup tables |
CN101901248B (zh) * | 2010-04-07 | 2012-08-15 | 北京星网锐捷网络技术有限公司 | 一种布隆过滤器的生成、更新以及查询元素方法和装置 |
JP5699554B2 (ja) * | 2010-11-11 | 2015-04-15 | 富士通株式会社 | ベクトル処理回路、命令発行制御方法、及びプロセッサシステム |
US9092227B2 (en) * | 2011-05-02 | 2015-07-28 | Anindya SAHA | Vector slot processor execution unit for high speed streaming inputs |
EP2788902B1 (en) * | 2011-12-08 | 2019-04-17 | Oracle International Corporation | Techniques for more efficient usage of memory-to-cpu bandwidth |
US9557993B2 (en) * | 2012-10-23 | 2017-01-31 | Analog Devices Global | Processor architecture and method for simplifying programming single instruction, multiple data within a register |
CN103105775B (zh) * | 2012-12-17 | 2014-04-16 | 清华大学 | 基于序优化与在线核极限学习机的分层迭代优化调度方法 |
CN103020018B (zh) * | 2012-12-27 | 2015-09-30 | 南京师范大学 | 一种基于多维伪随机序列的压缩感知矩阵构造方法 |
US9282014B2 (en) * | 2013-01-23 | 2016-03-08 | International Business Machines Corporation | Server restart management via stability time |
US10437600B1 (en) * | 2017-05-02 | 2019-10-08 | Ambarella, Inc. | Memory hierarchy to transfer vector data for operators of a directed acyclic graph |
-
2015
- 2015-07-31 EP EP15386026.7A patent/EP3125109B1/en active Active
-
2016
- 2016-06-23 US US15/741,303 patent/US11314514B2/en active Active
- 2016-06-23 CN CN201680044118.1A patent/CN107851022B/zh active Active
- 2016-06-23 JP JP2018503589A patent/JP6818010B2/ja active Active
- 2016-06-23 WO PCT/EP2016/064500 patent/WO2017021055A1/en active Application Filing
- 2016-06-23 KR KR1020187003457A patent/KR102586258B1/ko active IP Right Grant
- 2016-07-20 TW TW105122825A patent/TWI721999B/zh active
-
2017
- 2017-12-19 IL IL256403A patent/IL256403B/en active IP Right Grant
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7917302B2 (en) * | 2000-09-28 | 2011-03-29 | Torbjorn Rognes | Determination of optimal local sequence alignment similarity score |
CN101083525A (zh) * | 2005-12-30 | 2007-12-05 | 英特尔公司 | 密码处理单元以及乘法器 |
TW201020805A (en) * | 2008-10-08 | 2010-06-01 | Advanced Risc Mach Ltd | Apparatus and method for performing SIMD multiply-accumulate operations |
US20140207838A1 (en) * | 2011-12-22 | 2014-07-24 | Klaus Danne | Method, apparatus and system for execution of a vector calculation instruction |
TW201439902A (zh) * | 2012-12-27 | 2014-10-16 | Nvidia Corp | 指令轉譯錯誤偵測 |
US20140289502A1 (en) * | 2013-03-19 | 2014-09-25 | Apple Inc. | Enhanced vector true/false predicate-generating instructions |
Also Published As
Publication number | Publication date |
---|---|
KR20180037961A (ko) | 2018-04-13 |
US11314514B2 (en) | 2022-04-26 |
CN107851022A (zh) | 2018-03-27 |
IL256403B (en) | 2019-08-29 |
JP6818010B2 (ja) | 2021-01-20 |
JP2018521422A (ja) | 2018-08-02 |
CN107851022B (zh) | 2022-05-17 |
WO2017021055A1 (en) | 2017-02-09 |
TW201717051A (zh) | 2017-05-16 |
KR102586258B1 (ko) | 2023-10-10 |
EP3125109A1 (en) | 2017-02-01 |
IL256403A (en) | 2018-02-28 |
US20180196673A1 (en) | 2018-07-12 |
EP3125109B1 (en) | 2019-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI476684B (zh) | 於電腦處理器中執行聚集跨步指令及分散跨步指令之方法及設備 | |
CN109471659B (zh) | 使用写掩码将两个源操作数混合进单个目的地的系统、装置和方法 | |
JP5918287B2 (ja) | 演算マスクのマスクされていない要素をコンソリデートする命令処理装置、方法、システム、及びプログラム | |
JP5764257B2 (ja) | レジスタをアライメントするためのシステム、装置、および方法 | |
JP2018504666A (ja) | 多次元アレイから要素の多次元ブロックをプリフェッチするためのハードウェア装置および方法 | |
US11301580B2 (en) | Instruction execution that broadcasts and masks data values at different levels of granularity | |
TW201344561A (zh) | 用以執行遮罩位元壓縮之系統、設備、及方法 | |
JP2017529601A (ja) | ビットシャッフルプロセッサ、方法、システム、および命令 | |
KR20170065587A (ko) | 모턴 좌표 조정 프로세서, 방법, 시스템 및 명령어 | |
TWI721999B (zh) | 向量長度查詢指令 | |
KR20130140143A (ko) | 마스크 레지스터를 이용한 점프를 위한 시스템, 장치, 및 방법 | |
JP2012119009A5 (ja) | 選択演算を実行するプロセッサ | |
TWI739754B (zh) | 向量運算指令 | |
JP2018500629A (ja) | 3d座標から3dのz曲線インデックスを計算するための機械レベル命令 | |
KR102591988B1 (ko) | 데이터 처리장치에서의 벡터 인터리빙 | |
TW201732571A (zh) | 用於獲得偶數和奇數資料元素的系統、裝置及方法 | |
JP5327432B2 (ja) | 信号処理プロセッサ及び半導体装置 | |
CN115859315A (zh) | 用于对安全存储装置的直接外围访问的系统、装置和方法 | |
JPH0192851A (ja) | アドレス空間切替装置 | |
JP2018521421A (ja) | ベクトル被演算子ビットサイズの制御 | |
JP5311008B2 (ja) | 信号処理プロセッサ及び半導体装置 | |
JP5263498B2 (ja) | 信号処理プロセッサ及び半導体装置 |