JP2017515228A5 - - Google Patents

Download PDF

Info

Publication number
JP2017515228A5
JP2017515228A5 JP2016563817A JP2016563817A JP2017515228A5 JP 2017515228 A5 JP2017515228 A5 JP 2017515228A5 JP 2016563817 A JP2016563817 A JP 2016563817A JP 2016563817 A JP2016563817 A JP 2016563817A JP 2017515228 A5 JP2017515228 A5 JP 2017515228A5
Authority
JP
Japan
Prior art keywords
threads
simd processor
simd
processor
active
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.)
Pending
Application number
JP2016563817A
Other languages
English (en)
Other versions
JP2017515228A (ja
Filing date
Publication date
Priority claimed from US14/268,215 external-priority patent/US10133572B2/en
Application filed filed Critical
Publication of JP2017515228A publication Critical patent/JP2017515228A/ja
Publication of JP2017515228A5 publication Critical patent/JP2017515228A5/ja
Pending legal-status Critical Current

Links

Claims (9)

  1. 単一命令マルチデータ(SIMD)プロセッサ上で動作可能な方法であって、
    前記SIMDプロセッサ上で発散演算を実行するための命令を受信するステップと、
    前記SIMDプロセッサ上で発散演算を実行するための前記命令を受信したことに応答して、前記SIMDプロセッサの複数のスレッドから複数のアクティブスレッドを決定するステップと、
    前記決定された複数のアクティブスレッドから単一のアクティブスレッドを選択するステップと、
    他のすべてのアクティブスレッドが分岐条件を実行する一方で、前記選択された単一のアクティブスレッド上で前記発散演算を実行するステップと
    を含む、方法。
  2. 前記複数のスレッドが波動を形成し、前記波動が前記SIMDプロセッサによって並行して実行される、請求項1に記載の方法。
  3. 前記選択された単一のアクティブスレッド上で前記発散演算を前記実行するステップが、前記選択された単一のアクティブスレッド上で直列演算を実行するステップを含前記直列演算からの出力は、前記直列演算からの前記出力が完了するまで並行して処理し続けることができない1つまたは複数の他のスレッドに関する入力として必要とされる、請求項1に記載の方法。
  4. 前記発散演算を前記実行するステップが、共有レジスタ内にサブルーチンターゲットを記憶するステップを含み、前記方法が、
    前記共有レジスタに対するアクセスを有する1つまたは複数のアクティブスレッド上の前記サブルーチンターゲットにおいて記憶されたコードを実行するステップ
    をさらに含む、請求項1に記載の方法。
  5. 発散演算を実行するように構成された単一命令マルチデータ(SIMD)プロセッサであって、
    前記SIMDプロセッサ上で発散演算を実行するための命令を受信し、
    発散演算を実行するための前記命令を受信することに応答して、前記SIMDプロセッサの複数のスレッドから複数のアクティブスレッドを決定し、
    前記決定された複数のアクティブスレッドから単一のアクティブスレッドを選択するように構成された制御装置と、
    他のすべてのアクティブスレッドに関連する処理要素が分岐条件を実行する一方で、複数の処理要素であって、前記選択された単一のアクティブスレッドに関連する前記複数の処理要素のうち1つの処理要素が、前記発散演算を実行するように構成される、複数の処理要素と
    を備える、SIMDプロセッサ。
  6. 前記複数のスレッドが波動を形成し、前記波動が前記SIMDプロセッサによって並行して実行される、請求項5に記載のSIMDプロセッサ。
  7. 前記選択された単一のアクティブスレッドに関連する前記処理要素が、直列演算を実行するように構成され、前記直列演算からの出力は、前記直列演算からの前記出力が完了するまで並行して処理し続けることができない1つまたは複数の他のスレッドに関する入力として必要とされる、請求項5に記載のSIMDプロセッサ。
  8. 直列演算が、共有レジスタ内にサブルーチンターゲットを記憶し、前記複数の処理要素が、前記1つまたは複数のアクティブスレッドに関連し、かつ前記共有レジスタに対するアクセスを有する前記複数の処理要素のうちのいずれかの処理要素上の前記サブルーチンターゲットにおいて記憶されたコードを実行するようにさらに構成される、請求項5に記載のSIMDプロセッサ。
  9. メディアプレイヤ、セットトップボックス、ワイヤレスハンドセット、携帯情報端末(PDA)、デスクトップコンピュータ、ラップトップコンピュータ、ゲームコンソール、ビデオ会議ユニット、またはタブレットコンピューティングデバイスを含む、請求項5〜8のいずれか一項に記載のSIMDプロセッサを具備するデバイス。
JP2016563817A 2014-05-02 2015-04-10 Simd処理システムにおける直列実行のための技法 Pending JP2017515228A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/268,215 2014-05-02
US14/268,215 US10133572B2 (en) 2014-05-02 2014-05-02 Techniques for serialized execution in a SIMD processing system
PCT/US2015/025362 WO2015167777A1 (en) 2014-05-02 2015-04-10 Techniques for serialized execution in a simd processing system

Publications (2)

Publication Number Publication Date
JP2017515228A JP2017515228A (ja) 2017-06-08
JP2017515228A5 true JP2017515228A5 (ja) 2018-05-10

Family

ID=53039617

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016563817A Pending JP2017515228A (ja) 2014-05-02 2015-04-10 Simd処理システムにおける直列実行のための技法

Country Status (8)

Country Link
US (1) US10133572B2 (ja)
EP (1) EP3137988B1 (ja)
JP (1) JP2017515228A (ja)
KR (1) KR20160148673A (ja)
CN (1) CN106233248B (ja)
BR (1) BR112016025511A2 (ja)
ES (1) ES2834573T3 (ja)
WO (1) WO2015167777A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9898348B2 (en) * 2014-10-22 2018-02-20 International Business Machines Corporation Resource mapping in multi-threaded central processor units
US9921838B2 (en) * 2015-10-02 2018-03-20 Mediatek Inc. System and method for managing static divergence in a SIMD computing architecture
CN107534445B (zh) * 2016-04-19 2020-03-10 华为技术有限公司 用于分割哈希值计算的向量处理
US10034407B2 (en) * 2016-07-22 2018-07-24 Intel Corporation Storage sled for a data center
US10565017B2 (en) * 2016-09-23 2020-02-18 Samsung Electronics Co., Ltd. Multi-thread processor and controlling method thereof
US10990409B2 (en) * 2017-04-21 2021-04-27 Intel Corporation Control flow mechanism for execution of graphics processor instructions using active channel packing
CN108549583B (zh) * 2018-04-17 2021-05-07 致云科技有限公司 大数据处理方法、装置、服务器及可读存储介质
WO2020076630A1 (en) * 2018-10-08 2020-04-16 Convida Wireless, Llc Device discovery and connectivity in a cellular network
US20230097115A1 (en) * 2021-09-27 2023-03-30 Advanced Micro Devices, Inc. Garbage collecting wavefront

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6947047B1 (en) 2001-09-20 2005-09-20 Nvidia Corporation Method and system for programmable pipelined graphics processing with branching instructions
US7895328B2 (en) 2002-12-13 2011-02-22 International Business Machines Corporation System and method for context-based serialization of messages in a parallel execution environment
US7657882B2 (en) 2004-01-22 2010-02-02 University Of Washington Wavescalar architecture having a wave order memory
US7590830B2 (en) * 2004-05-28 2009-09-15 Sun Microsystems, Inc. Method and structure for concurrent branch prediction in a processor
GB2437836B (en) 2005-02-25 2009-01-14 Clearspeed Technology Plc Microprocessor architectures
US7761697B1 (en) * 2005-07-13 2010-07-20 Nvidia Corporation Processing an indirect branch instruction in a SIMD architecture
US7634637B1 (en) 2005-12-16 2009-12-15 Nvidia Corporation Execution of parallel groups of threads with per-instruction serialization
US8176265B2 (en) 2006-10-30 2012-05-08 Nvidia Corporation Shared single-access memory with management of multiple parallel requests
US8312254B2 (en) * 2008-03-24 2012-11-13 Nvidia Corporation Indirect function call instructions in a synchronous parallel thread processor
US8850436B2 (en) 2009-09-28 2014-09-30 Nvidia Corporation Opcode-specified predicatable warp post-synchronization
US8782645B2 (en) * 2011-05-11 2014-07-15 Advanced Micro Devices, Inc. Automatic load balancing for heterogeneous cores
US8683468B2 (en) * 2011-05-16 2014-03-25 Advanced Micro Devices, Inc. Automatic kernel migration for heterogeneous cores
US10152329B2 (en) 2012-02-09 2018-12-11 Nvidia Corporation Pre-scheduled replays of divergent operations
US9256429B2 (en) 2012-08-08 2016-02-09 Qualcomm Incorporated Selectively activating a resume check operation in a multi-threaded processing system
US9229721B2 (en) 2012-09-10 2016-01-05 Qualcomm Incorporated Executing subroutines in a multi-threaded processing system
US10013290B2 (en) 2012-09-10 2018-07-03 Nvidia Corporation System and method for synchronizing threads in a divergent region of code
KR101603752B1 (ko) * 2013-01-28 2016-03-28 삼성전자주식회사 멀티 모드 지원 프로세서 및 그 프로세서에서 멀티 모드를 지원하는 방법
KR20150019349A (ko) * 2013-08-13 2015-02-25 삼성전자주식회사 다중 쓰레드 실행 프로세서 및 이의 동작 방법
US9652284B2 (en) * 2013-10-01 2017-05-16 Qualcomm Incorporated GPU divergence barrier

Similar Documents

Publication Publication Date Title
JP2017515228A5 (ja)
JP2011098231A5 (ja)
US10372456B2 (en) Tensor processor instruction set architecture
JP2018518730A (ja) ニューラルネットワークプロセッサにおけるバッチ処理
JP2017517082A5 (ja)
JP2016514299A5 (ja)
JP2016526220A5 (ja)
RU2012147005A (ru) Средство разделенной загрузки/сохранения и команда для него
JP2009509234A5 (ja)
GB2517877A (en) Controlling an order for processing data elements during vector processing
JP2021503121A5 (ja)
JP2018130556A5 (ja)
JP2016530631A5 (ja)
JP2014132490A5 (ja)
RU2015151125A (ru) Процессоры, способы и системы для осуществления доступа к набору регистров либо как к множеству малых регистров, либо как к объединенному большому регистру
JP2021503126A5 (ja)
JP2017039057A5 (ja)
JP2020537270A5 (ja) 情報処理装置、情報処理方法、及びプログラム
JP2017221642A5 (ja)
JP2019155124A5 (ja) 情報処理装置及びプログラム
JP2019126741A5 (ja)
JP2013176624A5 (ja)
JP2018525730A (ja) スライディングウィンドウ演算
JP2014161410A5 (ja)
JP2018202183A5 (ja)