JP5883462B2 - 範囲検出を行うための命令及びロジック - Google Patents
範囲検出を行うための命令及びロジック Download PDFInfo
- Publication number
- JP5883462B2 JP5883462B2 JP2014006991A JP2014006991A JP5883462B2 JP 5883462 B2 JP5883462 B2 JP 5883462B2 JP 2014006991 A JP2014006991 A JP 2014006991A JP 2014006991 A JP2014006991 A JP 2014006991A JP 5883462 B2 JP5883462 B2 JP 5883462B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- range
- input
- logic
- elements
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/17—Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/57—Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Algebra (AREA)
- Complex Calculations (AREA)
- Advance Control (AREA)
- Length Measuring Devices With Unspecified Measuring Means (AREA)
- Executing Machine-Instructions (AREA)
Description
上記実施形態によれば、以下の構成もまた開示される。
(項目1)
複数の入力ベクトル要素に対応するスプライン多項式のそれぞれに対して、範囲値を決定する範囲検出命令を実行するロジックを備える装置。
(項目2)
前記ロジックは、入力ベクトルの要素それぞれと、対応する限界範囲ベクトル要素とを比較する比較ロジックを含む項目1に記載の装置。
(項目3)
前記ロジックは、入力ベクトルの要素それぞれと、対応する限界範囲ベクトル要素とを比較する二分探索ロジックを含む項目1に記載の装置。
(項目4)
前記ロジックは、前記範囲値を含む範囲値ベクトルを格納する範囲ベクトルストレージを含む項目1に記載の装置。
(項目5)
前記ロジックは、前記複数の入力ベクトル要素を格納する入力ベクトルストレージを含む項目4に記載の装置。
(項目6)
前記ロジックは、前記複数の入力ベクトル要素に対応する複数の係数ベクトル要素を格納する、少なくとも1つの係数ベクトルストレージを含む項目5に記載の装置。
(項目7)
前記ロジックは、前記複数の入力ベクトル要素に対応する複数のオフセットベクトル要素を格納する、少なくとも1つのオフセットベクトルストレージを含む項目6に記載の装置。
(項目8)
前記ロジックは、前記複数の入力ベクトル要素に対応する複数の出力ベクトル要素を格納する、少なくとも1つの出力ベクトルストレージを含む項目7に記載の装置。
(項目9)
スプライン関数の複数の入力値に対応する複数の範囲値を生成する範囲検出命令を実行する段階と、
前記スプライン関数の前記複数の入力値に対応した複数の多項式に対応する複数の係数を生成する係数照合オペレーションを実行する段階と、
前記複数の入力値に対応する複数の出力値を生成する多項式の値を求める計算を実行する段階と
を備える方法。
(項目10)
前記範囲検出命令は、範囲検出ロジックに、前記複数の範囲値を含む範囲ベクトルを生成させる項目9に記載の方法。
(項目11)
前記範囲検出ロジックは、前記複数の入力値のそれぞれと、対応する限界範囲ベクトル要素とを比較する比較ロジックを含む項目10に記載の方法。
(項目12)
前記ロジックは、前記複数の入力値のそれぞれと、対応する限界範囲ベクトル要素とを比較する二分探索ロジックを含む項目10に記載の方法。
(項目13)
範囲検出命令を格納するストレージと、
前記範囲検出命令の実行に応答して、複数の入力ベクトル要素に対応するスプライン多項式のそれぞれに対する範囲値を決定するプロセッサと
を備えるシステム。
(項目14)
前記プロセッサは、入力ベクトルの要素それぞれと、対応する限界範囲ベクトル要素とを比較する比較ロジックを含む項目13に記載のシステム。
(項目15)
前記プロセッサは、入力ベクトルの要素それぞれと、対応する限界範囲ベクトル要素とを比較する二分探索ロジックを含む項目13に記載のシステム。
(項目16)
前記プロセッサは、前記範囲値を含む範囲値ベクトルを格納する範囲ベクトルストレージを含む項目13に記載のシステム。
(項目17)
前記プロセッサは、前記複数の入力ベクトル要素を格納する入力ベクトルストレージを含む項目16に記載のシステム。
(項目18)
前記プロセッサは、前記複数の入力ベクトル要素に対応する複数の係数ベクトル要素を格納する、少なくとも1つの係数ベクトルストレージを含む項目17に記載のシステム。
(項目19)
前記プロセッサは、前記複数の入力ベクトル要素に対応する複数のオフセットベクトル要素を格納する、少なくとも1つのオフセットベクトルストレージを含む項目18に記載のシステム。
(項目20)
スプライン関数の複数の入力値に対応する複数の範囲値を生成する範囲検出命令を実行する第1ロジックと、
前記スプライン関数の前記複数の入力値に対応した複数の多項式に対応する複数の係数を生成する係数照合オペレーションを実行する第2ロジックと、
前記複数の入力値に対応する複数の出力値を生成する多項式の値を求める計算を実行する第3ロジックと
を備えるプロセッサ。
(項目21)
前記範囲検出命令は、前記第1ロジックに、前記複数の範囲値を含む範囲ベクトルを生成させる項目20に記載のプロセッサ。
(項目22)
前記第1ロジックは、前記複数の入力値のそれぞれと、対応する限界範囲ベクトル要素とを比較する比較ロジックを含む項目21に記載のプロセッサ。
(項目23)
前記第1ロジックは、前記複数の入力値のそれぞれと、対応する限界範囲ベクトル要素とを比較する二分探索ロジックを含む項目21に記載のプロセッサ。
Claims (19)
- 範囲検出ロジックを備え、
前記範囲検出ロジックは、
入力ベクトルおよび範囲限界ベクトルに対して単一命令複数データ(SIMD)の範囲検出を実行する範囲検出命令をデコードするデコードロジックと、
前記範囲検出命令に応じて、前記入力ベクトルの各入力点要素と前記範囲限界ベクトルの各範囲限界とを比較することでスプライン関数の各範囲を前記入力ベクトルの各入力点要素と比較して入力点要素毎の比較結果を累積して、隣接する範囲境界の間のいずれに対応する入力点要素が含まれるかを示す数を求めることにより、前記入力ベクトルの対応する各入力点要素が含まれる前記スプライン関数の各範囲値を含む、対応する範囲ベクトルを生成し、前記範囲ベクトルをSIMDレジスタにストアする実行ロジックと、
を有するプロセッサ。 - 前記実行ロジックは、入力ベクトルの要素それぞれと、対応する範囲限界ベクトル要素とを比較する比較ロジックを含む請求項1に記載のプロセッサ。
- 前記実行ロジックは、入力ベクトルの要素それぞれと、対応する範囲限界ベクトル要素とを比較する二分探索ロジックを含む請求項1に記載のプロセッサ。
- 前記範囲検出ロジックは、前記範囲値を含む前記範囲ベクトルを格納する範囲ベクトルストレージを含む請求項1から3のいずれか一項に記載のプロセッサ。
- 前記範囲検出ロジックは、前記入力ベクトルを格納する入力ベクトルストレージを含む請求項1から4のいずれか一項に記載のプロセッサ。
- 前記範囲検出ロジックは、前記入力ベクトルの複数の要素に対応する複数の係数ベクトル要素を格納する、少なくとも1つの係数ベクトルストレージを含む請求項1から5のいずれか一項に記載のプロセッサ。
- 前記範囲検出ロジックは、前記入力ベクトルの複数の要素に対応する複数のオフセットベクトル要素を格納する、少なくとも1つのオフセットベクトルストレージを含む請求項1から6のいずれか一項に記載のプロセッサ。
- 前記範囲検出ロジックは、前記入力ベクトルの複数の要素に対応する複数の出力ベクトル要素を格納する、少なくとも1つの出力ベクトルストレージを含む請求項1から7のいずれか一項に記載のプロセッサ。
- 命令を格納するストレージと、
複数の入力ベクトル要素に対応するスプライン多項式の範囲値を決定するプロセッサと
を備え、
前記プロセッサは、
入力ベクトルおよび範囲限界ベクトルに対して単一命令複数データ(SIMD)の範囲検出を実行する範囲検出命令を含む前記命令をデコードするデコードロジックと、
前記範囲検出命令に応じて、前記入力ベクトルの各入力点要素と前記範囲限界ベクトルの各範囲限界とを比較することでスプライン多項式の各範囲を前記入力ベクトルの各入力ベクトル要素と比較して入力点要素毎の比較結果を累積して、隣接する範囲境界の間のいずれに対応する入力点要素が含まれるかを示す数を求めることにより、前記入力ベクトルの対応する各入力ベクトル要素が含まれる前記スプライン多項式の各範囲値を含む、対応する範囲ベクトルを生成する実行ロジックと、
を有するシステム。 - 前記プロセッサは、入力ベクトルの要素それぞれと、対応する範囲限界ベクトル要素とを比較する比較ロジックを含む請求項9に記載のシステム。
- 前記プロセッサは、入力ベクトルの要素それぞれと、対応する範囲限界ベクトル要素とを比較する二分探索ロジックを含む請求項9に記載のシステム。
- 前記プロセッサは、前記範囲値を含む範囲値ベクトルを格納する範囲ベクトルストレージを含む請求項9から11のいずれか一項に記載のシステム。
- 前記プロセッサは、前記複数の入力ベクトル要素を格納する入力ベクトルストレージを含む請求項9から12のいずれか一項に記載のシステム。
- 前記プロセッサは、前記複数の入力ベクトル要素に対応する複数の係数ベクトル要素を格納する、少なくとも1つの係数ベクトルストレージを含む請求項9から13のいずれか一項に記載のシステム。
- 前記プロセッサは、前記複数の入力ベクトル要素に対応する複数のオフセットベクトル要素を格納する、少なくとも1つのオフセットベクトルストレージを含む請求項9から14のいずれか一項に記載のシステム。
- スプライン関数の複数の入力値に対応する複数の範囲値を生成する範囲検出を実行する第1ロジックと、
前記スプライン関数の前記複数の入力値に対応した複数の多項式に対応する複数の係数を生成する係数照合オペレーションを実行する第2ロジックと、
前記複数の入力値に対応する複数の出力値を生成する多項式の値を求める計算を実行する第3ロジックと
を備え、
前記第1ロジックは、
入力ベクトルおよび範囲限界ベクトルに対して単一命令複数データ(SIMD)の範囲検出を実行する範囲検出命令をデコードするデコードロジックと、
前記範囲検出命令に応じて、前記入力ベクトルの各入力点要素と前記範囲限界ベクトルの各範囲限界とを比較することでスプライン関数の各範囲を前記入力ベクトルの各入力要素と比較して入力点要素毎の比較結果を累積して、隣接する範囲境界の間のいずれに対応する入力点要素が含まれるかを示す数を求めることにより、前記入力ベクトルの対応する各入力要素が含まれる前記スプライン関数の各範囲値を含む、対応する範囲ベクトルを生成する実行ロジックと、
を有する装置。 - 前記範囲検出命令は、前記第1ロジックに、前記複数の範囲値を含む範囲ベクトルを生成させ、前記範囲ベクトルを前記範囲検出命令の結果としてSIMDレジスタに格納する請求項16に記載の装置。
- 前記第1ロジックは、前記複数の入力値のそれぞれと、対応する範囲限界ベクトル要素とを比較する比較ロジックを含む請求項16または17に記載の装置。
- 前記第1ロジックは、前記複数の入力値のそれぞれと、対応する範囲限界ベクトル要素とを比較する二分探索ロジックを含む請求項16または17に記載の装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/290,565 US8386547B2 (en) | 2008-10-31 | 2008-10-31 | Instruction and logic for performing range detection |
US12/290,565 | 2008-10-31 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011534699A Division JP5518087B2 (ja) | 2008-10-31 | 2009-10-28 | 範囲検出を行うための命令及びロジック |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014096174A JP2014096174A (ja) | 2014-05-22 |
JP5883462B2 true JP5883462B2 (ja) | 2016-03-15 |
Family
ID=42063259
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011534699A Active JP5518087B2 (ja) | 2008-10-31 | 2009-10-28 | 範囲検出を行うための命令及びロジック |
JP2014006991A Expired - Fee Related JP5883462B2 (ja) | 2008-10-31 | 2014-01-17 | 範囲検出を行うための命令及びロジック |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011534699A Active JP5518087B2 (ja) | 2008-10-31 | 2009-10-28 | 範囲検出を行うための命令及びロジック |
Country Status (7)
Country | Link |
---|---|
US (1) | US8386547B2 (ja) |
JP (2) | JP5518087B2 (ja) |
KR (1) | KR101105474B1 (ja) |
CN (1) | CN101907987B (ja) |
DE (1) | DE102009051288A1 (ja) |
TW (1) | TWI470545B (ja) |
WO (1) | WO2010051298A2 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9715383B2 (en) | 2012-03-15 | 2017-07-25 | International Business Machines Corporation | Vector find element equal instruction |
US9710266B2 (en) | 2012-03-15 | 2017-07-18 | International Business Machines Corporation | Instruction to compute the distance to a specified memory boundary |
US9280347B2 (en) | 2012-03-15 | 2016-03-08 | International Business Machines Corporation | Transforming non-contiguous instruction specifiers to contiguous instruction specifiers |
US9268566B2 (en) | 2012-03-15 | 2016-02-23 | International Business Machines Corporation | Character data match determination by loading registers at most up to memory block boundary and comparing |
US9588762B2 (en) | 2012-03-15 | 2017-03-07 | International Business Machines Corporation | Vector find element not equal instruction |
US9459864B2 (en) | 2012-03-15 | 2016-10-04 | International Business Machines Corporation | Vector string range compare |
US9459868B2 (en) | 2012-03-15 | 2016-10-04 | International Business Machines Corporation | Instruction to load data up to a dynamically determined memory boundary |
US9454366B2 (en) | 2012-03-15 | 2016-09-27 | International Business Machines Corporation | Copying character data having a termination character from one memory location to another |
US9459867B2 (en) | 2012-03-15 | 2016-10-04 | International Business Machines Corporation | Instruction to load data up to a specified memory boundary indicated by the instruction |
US9454367B2 (en) | 2012-03-15 | 2016-09-27 | International Business Machines Corporation | Finding the length of a set of character data having a termination character |
US9495155B2 (en) | 2013-08-06 | 2016-11-15 | Intel Corporation | Methods, apparatus, instructions and logic to provide population count functionality for genome sequencing and alignment |
US9513907B2 (en) * | 2013-08-06 | 2016-12-06 | Intel Corporation | Methods, apparatus, instructions and logic to provide vector population count functionality |
US20190250917A1 (en) * | 2018-02-14 | 2019-08-15 | Apple Inc. | Range Mapping of Input Operands for Transcendental Functions |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4918618A (en) * | 1988-04-11 | 1990-04-17 | Analog Intelligence Corporation | Discrete weight neural network |
US6535905B1 (en) | 1999-04-29 | 2003-03-18 | Intel Corporation | Method and apparatus for thread switching within a multithreaded processor |
JP3303835B2 (ja) * | 1999-04-30 | 2002-07-22 | 日本電気株式会社 | 音声の規則合成のためのピッチパタン生成装置及び方法 |
JP3688533B2 (ja) * | 1999-11-12 | 2005-08-31 | 本田技研工業株式会社 | 排ガス浄化用触媒装置の劣化状態評価方法 |
WO2003019356A1 (en) | 2001-08-22 | 2003-03-06 | Adelante Technologies B.V. | Pipelined processor and instruction loop execution method |
JP4144378B2 (ja) * | 2003-02-28 | 2008-09-03 | ソニー株式会社 | 画像処理装置および方法、記録媒体、並びにプログラム |
US7668894B2 (en) | 2003-08-22 | 2010-02-23 | Apple Inc. | Computation of power functions using polynomial approximations |
WO2007049150A2 (en) | 2005-09-28 | 2007-05-03 | Arc International (Uk) Limited | Architecture for microprocessor-based systems including simd processing unit and associated systems and methods |
-
2008
- 2008-10-31 US US12/290,565 patent/US8386547B2/en active Active
-
2009
- 2009-10-28 WO PCT/US2009/062307 patent/WO2010051298A2/en active Application Filing
- 2009-10-28 JP JP2011534699A patent/JP5518087B2/ja active Active
- 2009-10-29 DE DE102009051288A patent/DE102009051288A1/de active Pending
- 2009-10-30 KR KR1020090104031A patent/KR101105474B1/ko active IP Right Grant
- 2009-10-30 TW TW98136966A patent/TWI470545B/zh not_active IP Right Cessation
- 2009-10-31 CN CN200910253082.XA patent/CN101907987B/zh active Active
-
2014
- 2014-01-17 JP JP2014006991A patent/JP5883462B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP5518087B2 (ja) | 2014-06-11 |
CN101907987A (zh) | 2010-12-08 |
TW201030607A (en) | 2010-08-16 |
JP2012507796A (ja) | 2012-03-29 |
US8386547B2 (en) | 2013-02-26 |
JP2014096174A (ja) | 2014-05-22 |
KR101105474B1 (ko) | 2012-01-13 |
WO2010051298A3 (en) | 2010-07-08 |
US20100115014A1 (en) | 2010-05-06 |
KR20100048928A (ko) | 2010-05-11 |
WO2010051298A2 (en) | 2010-05-06 |
DE102009051288A1 (de) | 2010-05-06 |
TWI470545B (zh) | 2015-01-21 |
CN101907987B (zh) | 2015-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5883462B2 (ja) | 範囲検出を行うための命令及びロジック | |
CN109643228B (zh) | 用于浮点乘加运算的低能耗尾数乘法 | |
KR101515311B1 (ko) | 승산-승산-누산 명령 수행 | |
CN112099852A (zh) | 可变格式、可变稀疏矩阵乘法指令 | |
TWI471801B (zh) | 降低於一處理器之積和熔加運算(fma)單元中之功率消耗的技術 | |
US9710279B2 (en) | Method and apparatus for speculative vectorization | |
JP2009140491A (ja) | 融合型積和演算機能ユニット | |
GB2553783A (en) | Vector multiply-add instruction | |
TWI435266B (zh) | 萬用邏輯運算之方法及裝置 | |
US8615541B2 (en) | Extended-precision integer arithmetic and logical instructions | |
US20090172355A1 (en) | Instructions with floating point control override | |
JP6807073B2 (ja) | 高速ベクトルによる動的なメモリ競合検出 | |
TWI455019B (zh) | 執行倒數指令的設備、方法及系統 | |
CN110750300A (zh) | 一种基于忆阻器存储器内处理的混合计算装置 | |
US10289386B2 (en) | Iterative division with reduced latency | |
US20180046459A1 (en) | Data processing | |
WO2019005132A1 (en) | APPARATUS AND METHOD FOR MULTIPLICATION AND CUMULATION OF COMPLEX VALUES | |
WO2021060135A1 (ja) | 少命令セット組み込みプロセッサ | |
WO2019005130A1 (en) | APPARATUS AND METHOD FOR MULTIPLICATION AND ACCUMULATION OF COMPLEX VALUES | |
Arakawa | An embedded processor: is it ready for high-performance computing? | |
JP2003114795A (ja) | 加算に続く予測比較器システム及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150331 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20150630 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20150731 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20150831 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150925 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20151208 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20160106 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160205 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5883462 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |