JP2014523021A - グラフィックス処理ユニットにおけるメモリの共有 - Google Patents
グラフィックス処理ユニットにおけるメモリの共有 Download PDFInfo
- Publication number
- JP2014523021A JP2014523021A JP2014516973A JP2014516973A JP2014523021A JP 2014523021 A JP2014523021 A JP 2014523021A JP 2014516973 A JP2014516973 A JP 2014516973A JP 2014516973 A JP2014516973 A JP 2014516973A JP 2014523021 A JP2014523021 A JP 2014523021A
- Authority
- JP
- Japan
- Prior art keywords
- workgroup
- kernel
- gpu
- designations
- workgroups
- 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.)
- Granted
Links
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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5033—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering data affinity
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Image Processing (AREA)
- Image Generation (AREA)
Abstract
Description
以下に、本願の出願当初請求項に記載された発明を付記する。
[C1]
グラフィックス処理ユニット(GPU)を用いてデータを処理する方法であって、
シェーダプロセッサに関する実行順序を定義する入力を受信することであって、前記実行順序が複数のカーネル指定および複数のワークグループ指定を含む、受信することと、
前記複数のワークグループ指定および前記複数のカーネル指定において識別されたカーネルのワークグループを前記シェーダプロセッサに割り当てることと、
前記シェーダプロセッサによって、入力データを処理するために前記複数のワークグループ指定および前記複数のカーネル指定において識別された前記カーネルのワークグループを実行することと、を備える方法。
[C2]
前記複数のカーネル指定が複数のカーネルを識別し、前記複数のカーネルの各カーネルが前記GPUによって実施される機能を定義する、上記C1に記載の方法。
[C3]
前記複数のワークグループ指定が複数のワークグループを識別し、前記複数のワークグループの各ワークグループが前記GPUによって入力データに対して実行される命令を含む、上記C1に記載の方法。
[C4]
前記実行順序を定義する入力を受信することが、第1のカーネルの第1のワークグループを第2のカーネルの第1のワークグループにリンクさせる指定を受信することを含み、前記第1のカーネルの前記第1のワークグループと前記第2のカーネルの前記第1のワークグループが実質的に同じ入力データに関連づけられる、上記C1に記載の方法。
[C5]
前記実行順序を実行することが、前記シェーダプロセッサによって、前記第1のカーネルの前記第1のワークグループの後に前記第2のカーネルの前記第1のワークグループを実行することを含む、上記C4に記載の方法。
[C6]
実行順序のストリームを実行することが、前記複数のワークグループ指定において識別された2つ以上のワークグループの間で入力データを共有することを含む、上記C1に記載の方法。
[C7]
前記2つ以上のワークグループの間で入力データを共有することが、前記2つ以上のワークグループの第1のワークグループと前記2つ以上のワークグループの第2のワークグループの実行のために前記シェーダプロセッサのローカルメモリ内に前記入力データを保持することを含む、上記C6に記載の方法
[C8]
ユーザ入力に応答して、アプリケーション・プログラミング・インターフェース(API)を用いて前記実行順序を定義する前記入力を生成することをさらに含む、上記C1に記載の方法。
[C9]
グラフィックス処理ユニット(GPU)であって、
シェーダプロセッサに関する実行順序を定義する入力を受信するように構成されたシーケンサ・モジュールであって、前記実行順序が複数のカーネル指定および複数のワークグループ指定を備える、シーケンサ・モジュールを備え、
前記シーケンサ・モジュールが、前記複数のワークグループ指定および前記複数のカーネル指定において識別されたカーネルのワークグループを前記シェーダプロセッサに割り当てるように構成され、
前記シェーダプロセッサが、入力データを処理するために前記複数のワークグループ指定および前記複数のカーネル指定において識別されたカーネルの前記ワークグループを実行するように構成される、グラフィックス処理ユニット(GPU)。
[C10]
前記複数のカーネル指定が複数のカーネルを識別し、前記複数のカーネルの各カーネルが、前記GPUよって実施される機能を定義する、上記C9に記載のGPU。
[C11]
前記複数のワークグループ指定が複数のワークグループを識別し、前記複数のワークグループの各ワークグループが前記GPUによって入力データに対して実行される命令を含む、上記C9に記載のGPU。
[C12]
前記シーケンサ・モジュールが、第1のカーネルの第1のワークグループを第2のカーネルの第1のワークグループにリンクさせる指定を受信するようにさらに構成され、前記第1のカーネルの前記第1のワークグループと前記第2のカーネルの前記第1のワークグループが実質的に同じ入力データに関連づけられる、上記C9に記載のGPU。
[C13]
前記シェーダプロセッサが、前記第1のカーネルの前記第1のワークグループの後に前記第2のカーネルの前記第1のワークグループを実行するようにさらに構成される、上記C12に記載のGPU。
[C14]
前記シェーダプロセッサが、シェーダプロセッサメモリをさらに備え、前記シェーダプロセッサが、前記複数のワークグループ指定において識別された2つ以上のワークグループに関連づけられた入力データを記憶するように構成される、上記C9に記載のGPU。
[C15]
前記シェーダプロセッサメモリが、前記2つ以上のワークグループに関連づけられた前記記憶された入力データを保持し、前記2つ以上のワークグループの間で前記記憶されたデータを共有するようにさらに構成される、上記C14に記載のGPU。
[C16]
グラフィックス処理ユニット(GPU)であって、
シェーダプロセッサに関する実行順序を定義する入力を受信するための手段であって、前記実行順序が複数のカーネル指定および複数のワークグループ指定を含む、受信するための手段と、
前記複数のワークグループ指定および前記複数のカーネル指定において識別されたカーネルのワークグループを前記シェーダプロセッサに割り当てるための手段と、
入力データを処理するために前記複数のワークグループ指定および前記複数のカーネル指定において識別されたカーネルの前記ワークグループを実行するための手段と、を備えるグラフィックス処理ユニット(GPU)。
[C17]
前記複数のカーネル指定が複数のカーネルを識別し、前記複数のカーネルの各カーネルが前記GPUによって実施される機能を定義する、上記C16に記載のGPU。
[C18]
前記複数のワークグループ指定が複数のワークグループを識別し、前記複数のワークグループの各ワークグループが、前記GPUによって入力データに対して実行される命令を含む、上記C16に記載のGPU。
[C19]
入力を受信するための前記手段が、第1のカーネルの第1のワークグループを第2のカーネルの第1のワークグループにリンクさせる指定を受信するようにさらに構成され、前記第1のカーネルの前記第1のワークグループと前記第2のカーネルの前記第1のワークグループが実質的に同じ入力データに関連づけられる、上記C16に記載のGPU。
[C20]
実行するための前記手段が、前記第1のカーネルの前記第1のワークグループの後に前記第2のカーネルの前記第1のワークグループを実行するようにさらに構成される、上記C19に記載のGPU。
[C21]
実行するための前記手段が、前記複数のワークグループ指定において識別された2つ以上のワークグループに関連づけられた入力データを記憶するための手段をさらに含む、上記C16に記載のGPU。
[C22]
入力データを記憶するための前記手段が、前記2つ以上のワークグループに関連づけられた前記記憶された入力データを保持し、前記2つ以上のワークグループの間で前記記憶されたデータを共有するようにさらに構成される、上記C21に記載のGPU。
[C23]
コンピュータ可読記憶媒体であって、
シェーダプロセッサに関する実行順序を定義する入力を受信することであって、前記実行順序が複数のカーネル指定および複数のワークグループ指定を含む、受信することと、
前記複数のワークグループ指定および前記複数のカーネル指定において識別されたカーネルのワークグループを前記シェーダプロセッサに割り当てることと、
前記シェーダプロセッサによって、入力データを処理するために前記複数のワークグループ指定および前記複数のカーネル指定において識別されたカーネルの前記ワークグループ実行することと、
を、グラフィックス処理ユニット(GPU)を有するコンピューティングデバイスの1つまたは複数のプログラマブルプロセッサに行わせるための命令でエンコードされたコンピュータ可読記憶媒体。
[C24]
前記複数のカーネル指定が複数のカーネルを識別し、前記複数のカーネルの各カーネルが、前記GPUよって実施される機能を定義する、上記C23に記載のコンピュータ可読記憶媒体。
[C25]
前記複数のワークグループ指定が複数のワークグループを識別し、前記複数のワークグループの各ワークグループが前記GPUによって入力データに対して実行される命令を含む、上記C23に記載のコンピュータ可読記憶媒体。
[C26]
第1のカーネルの第1のワークグループを第2のカーネルの第1のワークグループにリンクさせる指定を受信することをコンピューティングデバイスの1つまたは複数のプログラマブルプロセッサに行わせるための命令をさらに備え、
前記第1のカーネルの前記第1のワークグループと前記第2のカーネルの前記第1のワークグループが実質的に同じ入力データに関連づけられる、上記C23に記載のコンピュータ可読記憶媒体。
[C27]
前記実行順序を実行することが、前記シェーダプロセッサによって、前記第1のカーネルの前記第1のワークグループの後に、第2のカーネルの前記第1のワークグループを実行することを含む、上記C26に記載のコンピュータ可読記憶媒体。
[C28]
実行順序のストリームを実行することが、前記複数のワークグループ指定において識別された2つ以上のワークグループの間で入力データを共有することを含む、上記C23に記載のコンピュータ可読記憶媒体。
[C29]
前記2つ以上のワークグループの間で入力データを共有することが、前記2つ以上のワークグループの第1のワークグループと前記2つ以上のワークグループの第2のワークグループの実行のために前記シェーダプロセッサのローカルメモリに前記入力データを保持することを含む、上記C28に記載のコンピュータ可読記憶媒体。
Claims (29)
- グラフィックス処理ユニット(GPU)を用いてデータを処理する方法であって、
シェーダプロセッサに関する実行順序を定義する入力を受信することであって、前記実行順序が複数のカーネル指定および複数のワークグループ指定を含む、受信することと、
前記複数のワークグループ指定および前記複数のカーネル指定において識別されたカーネルのワークグループを前記シェーダプロセッサに割り当てることと、
前記シェーダプロセッサによって、入力データを処理するために前記複数のワークグループ指定および前記複数のカーネル指定において識別された前記カーネルのワークグループを実行することと、を備える方法。 - 前記複数のカーネル指定が複数のカーネルを識別し、前記複数のカーネルの各カーネルが前記GPUによって実施される機能を定義する、請求項1に記載の方法。
- 前記複数のワークグループ指定が複数のワークグループを識別し、前記複数のワークグループの各ワークグループが前記GPUによって入力データに対して実行される命令を含む、請求項1に記載の方法。
- 前記実行順序を定義する入力を受信することが、第1のカーネルの第1のワークグループを第2のカーネルの第1のワークグループにリンクさせる指定を受信することを含み、前記第1のカーネルの前記第1のワークグループと前記第2のカーネルの前記第1のワークグループが実質的に同じ入力データに関連づけられる、請求項1に記載の方法。
- 前記実行順序を実行することが、前記シェーダプロセッサによって、前記第1のカーネルの前記第1のワークグループの後に前記第2のカーネルの前記第1のワークグループを実行することを含む、請求項4に記載の方法。
- 実行順序のストリームを実行することが、前記複数のワークグループ指定において識別された2つ以上のワークグループの間で入力データを共有することを含む、請求項1に記載の方法。
- 前記2つ以上のワークグループの間で入力データを共有することが、前記2つ以上のワークグループの第1のワークグループと前記2つ以上のワークグループの第2のワークグループの実行のために前記シェーダプロセッサのローカルメモリ内に前記入力データを保持することを含む、請求項6に記載の方法
- ユーザ入力に応答して、アプリケーション・プログラミング・インターフェース(API)を用いて前記実行順序を定義する前記入力を生成することをさらに含む、請求項1に記載の方法。
- グラフィックス処理ユニット(GPU)であって、
シェーダプロセッサに関する実行順序を定義する入力を受信するように構成されたシーケンサ・モジュールであって、前記実行順序が複数のカーネル指定および複数のワークグループ指定を備える、シーケンサ・モジュールを備え、
前記シーケンサ・モジュールが、前記複数のワークグループ指定および前記複数のカーネル指定において識別されたカーネルのワークグループを前記シェーダプロセッサに割り当てるように構成され、
前記シェーダプロセッサが、入力データを処理するために前記複数のワークグループ指定および前記複数のカーネル指定において識別されたカーネルの前記ワークグループを実行するように構成される、グラフィックス処理ユニット(GPU)。 - 前記複数のカーネル指定が複数のカーネルを識別し、前記複数のカーネルの各カーネルが、前記GPUよって実施される機能を定義する、請求項9に記載のGPU。
- 前記複数のワークグループ指定が複数のワークグループを識別し、前記複数のワークグループの各ワークグループが前記GPUによって入力データに対して実行される命令を含む、請求項9に記載のGPU。
- 前記シーケンサ・モジュールが、第1のカーネルの第1のワークグループを第2のカーネルの第1のワークグループにリンクさせる指定を受信するようにさらに構成され、前記第1のカーネルの前記第1のワークグループと前記第2のカーネルの前記第1のワークグループが実質的に同じ入力データに関連づけられる、請求項9に記載のGPU。
- 前記シェーダプロセッサが、前記第1のカーネルの前記第1のワークグループの後に前記第2のカーネルの前記第1のワークグループを実行するようにさらに構成される、請求項12に記載のGPU。
- 前記シェーダプロセッサが、シェーダプロセッサメモリをさらに備え、前記シェーダプロセッサが、前記複数のワークグループ指定において識別された2つ以上のワークグループに関連づけられた入力データを記憶するように構成される、請求項9に記載のGPU。
- 前記シェーダプロセッサメモリが、前記2つ以上のワークグループに関連づけられた前記記憶された入力データを保持し、前記2つ以上のワークグループの間で前記記憶されたデータを共有するようにさらに構成される、請求項14に記載のGPU。
- グラフィックス処理ユニット(GPU)であって、
シェーダプロセッサに関する実行順序を定義する入力を受信するための手段であって、前記実行順序が複数のカーネル指定および複数のワークグループ指定を含む、受信するための手段と、
前記複数のワークグループ指定および前記複数のカーネル指定において識別されたカーネルのワークグループを前記シェーダプロセッサに割り当てるための手段と、
入力データを処理するために前記複数のワークグループ指定および前記複数のカーネル指定において識別されたカーネルの前記ワークグループを実行するための手段と、を備えるグラフィックス処理ユニット(GPU)。 - 前記複数のカーネル指定が複数のカーネルを識別し、前記複数のカーネルの各カーネルが前記GPUによって実施される機能を定義する、請求項16に記載のGPU。
- 前記複数のワークグループ指定が複数のワークグループを識別し、前記複数のワークグループの各ワークグループが、前記GPUによって入力データに対して実行される命令を含む、請求項16に記載のGPU。
- 入力を受信するための前記手段が、第1のカーネルの第1のワークグループを第2のカーネルの第1のワークグループにリンクさせる指定を受信するようにさらに構成され、前記第1のカーネルの前記第1のワークグループと前記第2のカーネルの前記第1のワークグループが実質的に同じ入力データに関連づけられる、請求項16に記載のGPU。
- 実行するための前記手段が、前記第1のカーネルの前記第1のワークグループの後に前記第2のカーネルの前記第1のワークグループを実行するようにさらに構成される、請求項19に記載のGPU。
- 実行するための前記手段が、前記複数のワークグループ指定において識別された2つ以上のワークグループに関連づけられた入力データを記憶するための手段をさらに含む、請求項16に記載のGPU。
- 入力データを記憶するための前記手段が、前記2つ以上のワークグループに関連づけられた前記記憶された入力データを保持し、前記2つ以上のワークグループの間で前記記憶されたデータを共有するようにさらに構成される、請求項21に記載のGPU。
- コンピュータ可読記憶媒体であって、
シェーダプロセッサに関する実行順序を定義する入力を受信することであって、前記実行順序が複数のカーネル指定および複数のワークグループ指定を含む、受信することと、
前記複数のワークグループ指定および前記複数のカーネル指定において識別されたカーネルのワークグループを前記シェーダプロセッサに割り当てることと、
前記シェーダプロセッサによって、入力データを処理するために前記複数のワークグループ指定および前記複数のカーネル指定において識別されたカーネルの前記ワークグループ実行することと、
を、グラフィックス処理ユニット(GPU)を有するコンピューティングデバイスの1つまたは複数のプログラマブルプロセッサに行わせるための命令でエンコードされたコンピュータ可読記憶媒体。 - 前記複数のカーネル指定が複数のカーネルを識別し、前記複数のカーネルの各カーネルが、前記GPUよって実施される機能を定義する、請求項23に記載のコンピュータ可読記憶媒体。
- 前記複数のワークグループ指定が複数のワークグループを識別し、前記複数のワークグループの各ワークグループが前記GPUによって入力データに対して実行される命令を含む、請求項23に記載のコンピュータ可読記憶媒体。
- 第1のカーネルの第1のワークグループを第2のカーネルの第1のワークグループにリンクさせる指定を受信することをコンピューティングデバイスの1つまたは複数のプログラマブルプロセッサに行わせるための命令をさらに備え、
前記第1のカーネルの前記第1のワークグループと前記第2のカーネルの前記第1のワークグループが実質的に同じ入力データに関連づけられる、請求項23に記載のコンピュータ可読記憶媒体。 - 前記実行順序を実行することが、前記シェーダプロセッサによって、前記第1のカーネルの前記第1のワークグループの後に、第2のカーネルの前記第1のワークグループを実行することを含む、請求項26に記載のコンピュータ可読記憶媒体。
- 実行順序のストリームを実行することが、前記複数のワークグループ指定において識別された2つ以上のワークグループの間で入力データを共有することを含む、請求項23に記載のコンピュータ可読記憶媒体。
- 前記2つ以上のワークグループの間で入力データを共有することが、前記2つ以上のワークグループの第1のワークグループと前記2つ以上のワークグループの第2のワークグループの実行のために前記シェーダプロセッサのローカルメモリに前記入力データを保持することを含む、請求項28に記載のコンピュータ可読記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/164,615 | 2011-06-20 | ||
US13/164,615 US9092267B2 (en) | 2011-06-20 | 2011-06-20 | Memory sharing in graphics processing unit |
PCT/US2012/038659 WO2012177343A1 (en) | 2011-06-20 | 2012-05-18 | Memory sharing in graphics processing unit |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014523021A true JP2014523021A (ja) | 2014-09-08 |
JP5752853B2 JP5752853B2 (ja) | 2015-07-22 |
Family
ID=46201818
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014516973A Expired - Fee Related JP5752853B2 (ja) | 2011-06-20 | 2012-05-18 | グラフィックス処理ユニットにおけるメモリの共有 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9092267B2 (ja) |
EP (1) | EP2721488B1 (ja) |
JP (1) | JP5752853B2 (ja) |
KR (1) | KR101590734B1 (ja) |
CN (1) | CN103608777B (ja) |
WO (1) | WO2012177343A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019537104A (ja) * | 2016-10-21 | 2019-12-19 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated | 分散型gpuのデータ局所性を改善するためのメカニズム |
JP2023516819A (ja) * | 2020-04-28 | 2023-04-20 | ソニー・インタラクティブエンタテインメント エルエルシー | 領域ベースの依存関係によるカーネルの効率的なマルチgpu実行のためのシステム及び方法 |
Families Citing this family (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8842122B2 (en) * | 2011-12-15 | 2014-09-23 | Qualcomm Incorporated | Graphics processing unit with command processor |
US9256915B2 (en) | 2012-01-27 | 2016-02-09 | Qualcomm Incorporated | Graphics processing unit buffer management |
US9009712B2 (en) * | 2012-03-16 | 2015-04-14 | Advanced Micro Devices, Inc. | GPU distributed work-item queuing |
US9286648B2 (en) * | 2012-08-03 | 2016-03-15 | Nadar Mariappan S | Zero communication block partitioning |
US20140122558A1 (en) * | 2012-10-29 | 2014-05-01 | Nvidia Corporation | Technique for offloading compute operations utilizing a low-latency data transmission protocol |
JP5971115B2 (ja) * | 2012-12-26 | 2016-08-17 | 富士通株式会社 | 情報処理プログラム、情報処理方法及び装置 |
US20140232733A1 (en) * | 2013-02-19 | 2014-08-21 | Jason Caulkins | Graphics Processing Unit Pre-Caching |
US9052740B2 (en) * | 2013-03-12 | 2015-06-09 | Qualcomm Incorporated | Adaptive data path for computer-vision applications |
US20140274243A1 (en) * | 2013-03-15 | 2014-09-18 | Colorado Seminary | Tailoring educational learning environments |
US9442706B2 (en) * | 2014-05-30 | 2016-09-13 | Apple Inc. | Combining compute tasks for a graphics processing unit |
US9633411B2 (en) * | 2014-06-26 | 2017-04-25 | Qualcomm Incorporated | Load scheme for shared register in GPU |
CN107003934B (zh) * | 2014-12-08 | 2020-12-29 | 英特尔公司 | 改进共享本地存储器和系统全局存储器之间的存储器访问性能的装置和方法 |
GB2533284B (en) * | 2014-12-11 | 2017-04-12 | Imagination Tech Ltd | Performing object detection |
US9749548B2 (en) | 2015-01-22 | 2017-08-29 | Google Inc. | Virtual linebuffers for image signal processors |
US9769356B2 (en) | 2015-04-23 | 2017-09-19 | Google Inc. | Two dimensional shift array for image processor |
US10291813B2 (en) | 2015-04-23 | 2019-05-14 | Google Llc | Sheet generator for image processor |
US9756268B2 (en) | 2015-04-23 | 2017-09-05 | Google Inc. | Line buffer unit for image processor |
US10095479B2 (en) | 2015-04-23 | 2018-10-09 | Google Llc | Virtual image processor instruction set architecture (ISA) and memory model and exemplary target hardware having a two-dimensional shift array structure |
US9772852B2 (en) | 2015-04-23 | 2017-09-26 | Google Inc. | Energy efficient processor core architecture for image processor |
US9965824B2 (en) | 2015-04-23 | 2018-05-08 | Google Llc | Architecture for high performance, power efficient, programmable image processing |
US9785423B2 (en) | 2015-04-23 | 2017-10-10 | Google Inc. | Compiler for translating between a virtual image processor instruction set architecture (ISA) and target hardware having a two-dimensional shift array structure |
US9965343B2 (en) * | 2015-05-13 | 2018-05-08 | Advanced Micro Devices, Inc. | System and method for determining concurrency factors for dispatch size of parallel processor kernels |
GB2541179B (en) | 2015-07-31 | 2019-10-30 | Imagination Tech Ltd | Denoising filter |
US9830150B2 (en) | 2015-12-04 | 2017-11-28 | Google Llc | Multi-functional execution lane for image processor |
US10313641B2 (en) | 2015-12-04 | 2019-06-04 | Google Llc | Shift register with reduced wiring complexity |
US10387988B2 (en) | 2016-02-26 | 2019-08-20 | Google Llc | Compiler techniques for mapping program code to a high performance, power efficient, programmable image processing hardware platform |
US10204396B2 (en) | 2016-02-26 | 2019-02-12 | Google Llc | Compiler managed memory for image processor |
US10380969B2 (en) | 2016-02-28 | 2019-08-13 | Google Llc | Macro I/O unit for image processor |
US10838782B2 (en) * | 2016-05-24 | 2020-11-17 | Accenture Global Solutions Limited | Event abstractor |
US20180005059A1 (en) | 2016-07-01 | 2018-01-04 | Google Inc. | Statistics Operations On Two Dimensional Image Processor |
US10546211B2 (en) | 2016-07-01 | 2020-01-28 | Google Llc | Convolutional neural network on programmable two dimensional image processor |
US20180005346A1 (en) | 2016-07-01 | 2018-01-04 | Google Inc. | Core Processes For Block Operations On An Image Processor Having A Two-Dimensional Execution Lane Array and A Two-Dimensional Shift Register |
US20180007302A1 (en) | 2016-07-01 | 2018-01-04 | Google Inc. | Block Operations For An Image Processor Having A Two-Dimensional Execution Lane Array and A Two-Dimensional Shift Register |
US10552934B2 (en) | 2016-07-01 | 2020-02-04 | Intel Corporation | Reducing memory latency in graphics operations |
US10223822B2 (en) * | 2016-12-22 | 2019-03-05 | Apple Inc. | Mid-render compute for graphics processing |
US10445852B2 (en) * | 2016-12-22 | 2019-10-15 | Apple Inc. | Local image blocks for graphics processing |
KR102592330B1 (ko) * | 2016-12-27 | 2023-10-20 | 삼성전자주식회사 | OpenCL 커널을 처리하는 방법과 이를 수행하는 컴퓨팅 장치 |
US10367639B2 (en) | 2016-12-29 | 2019-07-30 | Intel Corporation | Graphics processor with encrypted kernels |
US10255105B2 (en) * | 2017-04-11 | 2019-04-09 | Imagination Technologies Limited | Parallel computing architecture for use with a non-greedy scheduling algorithm |
US10552161B2 (en) | 2017-06-21 | 2020-02-04 | International Business Machines Corporation | Cluster graphical processing unit (GPU) resource sharing efficiency by directed acyclic graph (DAG) generation |
US10942746B2 (en) | 2017-08-31 | 2021-03-09 | Rail Vision Ltd | System and method for high throughput in multiple computations |
KR102649351B1 (ko) | 2018-11-06 | 2024-03-20 | 삼성전자주식회사 | 세분화된 상태들에 기초한 그래픽스 프로세서 및 그래픽스 처리 방법 |
WO2020184982A1 (ko) * | 2019-03-11 | 2020-09-17 | 서울대학교산학협력단 | 이종클러스터 시스템에서 실행되는 프로그램을 실행시키는 방법 및 컴퓨터 프로그램 |
CN110446046B (zh) * | 2019-08-19 | 2021-04-27 | 杭州图谱光电科技有限公司 | 一种基于嵌入式平台的批量图像快速解码方法 |
FR3105469B1 (fr) * | 2019-12-19 | 2021-12-31 | Thales Sa | Processeur graphique, plateforme comprenant un tel processeur graphique et un processeur central multicoeurs, et procede de gestion de ressource (s) d'un tel processeur graphique |
US11809902B2 (en) * | 2020-09-24 | 2023-11-07 | Advanced Micro Devices, Inc. | Fine-grained conditional dispatching |
CN113034629B (zh) * | 2021-05-17 | 2021-08-20 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、计算机设备及存储介质 |
KR102351134B1 (ko) * | 2021-08-03 | 2022-01-13 | 주식회사 미리디 | 웹 서버 기반의 디자인 리소스 관리 방법 및 시스템 |
US20230047481A1 (en) * | 2021-08-11 | 2023-02-16 | Apple Inc. | Affinity-based Graphics Scheduling |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009520307A (ja) * | 2005-12-19 | 2009-05-21 | エヌヴィディア コーポレイション | グラフィックスプロセッサの並列アレイアーキテクチャ |
WO2011017026A1 (en) * | 2009-07-27 | 2011-02-10 | Advanced Micro Devices, Inc. | Mapping processing logic having data parallel threads across processors |
WO2011028981A1 (en) * | 2009-09-03 | 2011-03-10 | Advanced Micro Devices, Inc. | A processing unit with a plurality of shader engines |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0693737A3 (en) * | 1994-07-21 | 1997-01-08 | Ibm | Method and apparatus for managing tasks in a multiprocessor system |
US7548244B2 (en) | 2005-01-12 | 2009-06-16 | Sony Computer Entertainment Inc. | Interactive debugging and monitoring of shader programs executing on a graphics processor |
CN101849227A (zh) * | 2005-01-25 | 2010-09-29 | 透明信息技术有限公司 | 在单片构造的硅芯片上采用多个图形核心的图形处理和显示系统 |
US9135017B2 (en) | 2007-01-16 | 2015-09-15 | Ati Technologies Ulc | Configurable shader ALU units |
KR100980449B1 (ko) * | 2007-12-17 | 2010-09-07 | 한국전자통신연구원 | 병렬 전역조명 렌더링 방법 및 시스템 |
US8120608B2 (en) | 2008-04-04 | 2012-02-21 | Via Technologies, Inc. | Constant buffering for a computational core of a programmable graphics processing unit |
JP5461533B2 (ja) * | 2008-05-30 | 2014-04-02 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | ローカル及びグローバルのデータ共有 |
GB2466078B (en) | 2008-12-15 | 2013-11-13 | Advanced Risc Mach Ltd | Apparatus and method for tracing activities of a shader program executed on shader circuitry of a data processing apparatus |
US8456480B2 (en) * | 2009-01-14 | 2013-06-04 | Calos Fund Limited Liability Company | Method for chaining image-processing functions on a SIMD processor |
US8499305B2 (en) * | 2010-10-15 | 2013-07-30 | Via Technologies, Inc. | Systems and methods for performing multi-program general purpose shader kickoff |
US8683468B2 (en) * | 2011-05-16 | 2014-03-25 | Advanced Micro Devices, Inc. | Automatic kernel migration for heterogeneous cores |
-
2011
- 2011-06-20 US US13/164,615 patent/US9092267B2/en active Active
-
2012
- 2012-05-18 KR KR1020147001412A patent/KR101590734B1/ko active IP Right Grant
- 2012-05-18 WO PCT/US2012/038659 patent/WO2012177343A1/en active Application Filing
- 2012-05-18 JP JP2014516973A patent/JP5752853B2/ja not_active Expired - Fee Related
- 2012-05-18 EP EP12725205.4A patent/EP2721488B1/en not_active Not-in-force
- 2012-05-18 CN CN201280029553.9A patent/CN103608777B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009520307A (ja) * | 2005-12-19 | 2009-05-21 | エヌヴィディア コーポレイション | グラフィックスプロセッサの並列アレイアーキテクチャ |
WO2011017026A1 (en) * | 2009-07-27 | 2011-02-10 | Advanced Micro Devices, Inc. | Mapping processing logic having data parallel threads across processors |
WO2011028981A1 (en) * | 2009-09-03 | 2011-03-10 | Advanced Micro Devices, Inc. | A processing unit with a plurality of shader engines |
Non-Patent Citations (2)
Title |
---|
CSNJ201110037063; 西辻崇 , 外4名: '"AMD GPUとOpenCLを用いたフレネル回折計算の高速計算"' 電子情報通信学会2011年総合大会講演論文集 情報・システム2 , 20110228, p.63 * |
JPN6014052924; 西辻崇 , 外4名: '"AMD GPUとOpenCLを用いたフレネル回折計算の高速計算"' 電子情報通信学会2011年総合大会講演論文集 情報・システム2 , 20110228, p.63 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019537104A (ja) * | 2016-10-21 | 2019-12-19 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated | 分散型gpuのデータ局所性を改善するためのメカニズム |
JP2023516819A (ja) * | 2020-04-28 | 2023-04-20 | ソニー・インタラクティブエンタテインメント エルエルシー | 領域ベースの依存関係によるカーネルの効率的なマルチgpu実行のためのシステム及び方法 |
JP7376732B2 (ja) | 2020-04-28 | 2023-11-08 | ソニー・インタラクティブエンタテインメント エルエルシー | 領域ベースの依存関係によるカーネルの効率的なマルチgpu実行のためのシステム及び方法 |
JP7453460B2 (ja) | 2020-04-28 | 2024-03-19 | ソニー・インタラクティブエンタテインメント エルエルシー | 領域ベースの依存関係によるカーネルの効率的なマルチgpu実行のためのシステム及び方法 |
Also Published As
Publication number | Publication date |
---|---|
US20120320070A1 (en) | 2012-12-20 |
JP5752853B2 (ja) | 2015-07-22 |
US9092267B2 (en) | 2015-07-28 |
EP2721488B1 (en) | 2017-08-16 |
CN103608777A (zh) | 2014-02-26 |
KR20140015631A (ko) | 2014-02-06 |
CN103608777B (zh) | 2017-05-10 |
EP2721488A1 (en) | 2014-04-23 |
KR101590734B1 (ko) | 2016-02-01 |
WO2012177343A1 (en) | 2012-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5752853B2 (ja) | グラフィックス処理ユニットにおけるメモリの共有 | |
US11442795B2 (en) | Convergence among concurrently executing threads | |
US8842122B2 (en) | Graphics processing unit with command processor | |
US9535815B2 (en) | System, method, and computer program product for collecting execution statistics for graphics processing unit workloads | |
JP6077018B2 (ja) | 異種cpu−gpu計算のための実行モデル | |
TWI502510B (zh) | 最佳化管理執行緒堆疊記憶體的系統、方法,及電腦程式產品 | |
KR20160143489A (ko) | 인터리빙을 수행하는 방법 및 장치. | |
JP5778343B2 (ja) | グラフィックス処理ユニットでの命令カリング | |
KR20130036213A (ko) | 상태 정보의 손실 없이 복수의 프로세서들을 사용하여 비디오 및/또는 그래픽 데이터를 처리하기 위한 방법, 시스템 및 장치 | |
US20200334076A1 (en) | Deep learning thread communication | |
US11880715B2 (en) | Method and system for opportunistic load balancing in neural networks using metadata | |
US11934867B2 (en) | Techniques for divergent thread group execution scheduling | |
CN112395010A (zh) | 实现工作负载的静态映射的乱序流水线执行的方法和装置 | |
JP2021034023A (ja) | アクセラレータにおいてヘテロジニアスコンポーネントを設定する方法及び装置 | |
CN112214443B (zh) | 设置于图形处理器中的二次卸载装置和方法 | |
CN112230931B (zh) | 适用于图形处理器的二次卸载的编译方法、装置和介质 | |
Joseph et al. | Performance and energy consumption analysis of java code utilizing embedded GPU |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141201 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141216 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150316 |
|
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: 20150421 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150520 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5752853 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 |