US11526964(INTEL CORP [US])
[0032] A graphics processing unit (GPU) is communicatively coupled to host/processor cores to accelerate, for example, graphics operations, machine-learning operations, pattern analysis operations, and/or various general-purpose GPU (GPGPU) functions.
【0032】
グラフィックス処理ユニット(GPU)は、例えばグラフィックス演算、機械学習演算、パターン解析演算、及び/又は種々の汎用GPU(GPGPU)機能を加速させるために、ホスト/プロセッサ・コアに通信可能に結合される。
The GPU may be communicatively coupled to the host processor/cores over a bus or another interconnect (e.g., a high-speed interconnect such as PCIe or NVLink).
GPUは、バス又は他の相互接続(例えば、PCIe又はNVLinkのような高速相互接続)を介してホスト・プロセッサ/コアに通信可能に結合されてもよい。
Alternatively, the GPU may be integrated on the same package or chip as the cores and communicatively coupled to the cores over an internal processor bus/interconnect (i.e., internal to the package or chip).
或いは、GPUは、コアと同じパッケージ又はチップ上に統合されてもよいし、内部プロセッサ・バス/相互接続(即ち、パッケージ又はチップの内部)でコアに通信可能に結合されてもよい。
Regardless of the manner in which the GPU is connected, the processor cores may allocate work to the GPU in the form of sequences of commands/instructions contained in a work descriptor.
GPUが接続される方法にかかわらず、プロセッサ・コアは、作業記述子に含まれる一連のコマンド/命令の形式で、作業をGPUに割り当てることができる。
The GPU then uses dedicated circuitry/logic for efficiently processing these commands/instructions.
そして、GPUは、これらのコマンド/命令を効率的に処理するために、専用の回路/ロジックを使用する。
////////////
[0121] FIG. 5 B illustrates example internal details of an execution unit 508 , according to embodiments.
【0121】
図5Bは、実施形態による実行ユニット508の例示的な内部詳細を示す。
A graphics execution unit 508 can include an instruction fetch unit 537 ,
グラフィックス実行ユニット508は、命令フェッチ・ユニット537、
a general register file array (GRF) 524 , an architectural register file array (ARF) 526 ,
汎用レジスタ・ファイル・アレイ(GRF)524、アーキテクチャ・レジスタ・ファイル・アレイ(ARF)526、
a thread arbiter 522 , a send unit 530 , a branch unit 532 ,
スレッド・アービタ522、送信ユニット530、分岐ユニット532、
a set of SIMD floating point units (FPUs) 534 , and in one embodiment a set of dedicated integer SIMD ALUs 535 .
SIMD浮動小数点ユニット(FPU)534のセット、及び一実施形態では専用整数SIMD ALU535のセットを含むことができる。
US11016779(COHERENT LOGIX INC [US])
[0102] An MPS may execute an application or program fast enough that it can accept input data and commands faster than the associated sources of data and commands can provide them and can provide results with a latency that is low enough to be ignored.
【0059】
MPSは、関連するデータ及びコマンドのソースが入力データ及びコマンドを提供するよりも早くこれらを受信でき、無視できる程度に十分に低いレイテンシで結果を提供できるよう、十分な速さでアプリケーション又はプログラムを実行できる。
Such an application is referred to as operating without delays in real time or as a “real-time application”.
このようなアプリケーションは、遅延なくリアルタイムで動作する、即ち「リアルタイムアプリケーション」と呼ばれる。
The associated input data (or commands) may be referred to as “real-time data” (or “real-time” commands.
関連する入力データ(又はコマンド)は「リアルタイムデータ」(又は「リアルタイムコマンド」)と呼ばれる。
For example, the MPS may receive real-time data via an input signal.
例えばMPSは入力信号を介してリアルタイムデータを受信してよい。
One or more of the applications, programs, or functions, may process the input signal,
アプリケーション、プログラム又は機能のうちの1つ又は複数は入力信号を処理してよく、
and possibly produce an output signal with modified or additional real-time data based on the program or programs.
場合によっては、1つ又は複数のプログラムに基づいて修正された又は追加のリアルタイムデータを伴う出力信号を生成してよい。
////////
[0105] In one embodiment, a PE may include one or more arithmetic-logic units (ALUs) configured for manipulating data,
【0062】
一実施形態では、PEは、データを操作するために構成された1つ又は複数の算術論理ユニット(ALU)、
one or more instruction processing units (IPUs) configured for controlling the ALUs,
ALUを制御するために構成された1つ又は複数の命令処理ユニット(IPU)、
one or more memories configured to hold instructions or data, and multiplexers and decoders of various sorts.
命令又はデータを保持するよう構成された1つ又は複数のメモリ、並びに様々な種類の多重化装置及び復号器を含んでよい。
Such an embodiment may include a number of ports (“processor ports”),
このような実施形態は多数のポート(「プロセッサポート」)を含んでよく、
some of which may be configured for connection to DMRs and others that may be configured for connection to other PEs.
これらのうちのいくつかはDMRに接続されるよう構成されてよく、残りは他のPEに接続されるよう構成されてよい。
FIG. 7 is a block diagram of one embodiment of a PE, and is described further below.
図7はPEの一実施形態のブロック図であり、これについて以下に更に説明する。
US11403729(ADVANCED MICRO DEVICES INC [US])
[0001] Processing on a graphics processing unit (GPU) is typically
【0001】
グラフィック処理ユニット(graphics processing unit、GPU)における処理は、典型的には、
initiated by application programming interface (API) calls (e.g., draw calls) that are processed by a central processing unit (CPU).
中央処理ユニット(central processing unit、CPU)によって処理されるアプリケーションプログラミングインターフェース(application programming interface、API)コール(例えば、ドローコール)によって開始される。
A draw call is a command that is generated by the CPU and transmitted to the GPU to instruct the GPU to render an object (or a portion of an object) in a frame.
ドローコールは、CPUによって生成され、GPUに伝送されて、フレーム内のオブジェクト(又はオブジェクトの一部)をレンダリングするようにGPUに命令するコマンドである。
//////
[0033] In some embodiments, the applications 620 utilize an application programming interface (API) 625 to invoke a user mode driver 630 or other GPU driver.
【0025】
いくつかの実施形態では、アプリケーション620は、アプリケーションプログラミングインターフェース(API)625を利用して、ユーザモードドライバ630又は他のGPUドライバを呼び出す。
User mode driver 630 issues one or more commands (or command buffers) to the GPU 610 .
ユーザモードドライバ630は、1つ以上のコマンド(又はコマンドバッファ)をGPU610に発行する。
If the applications 620 issue graphics commands, the graphics commands instruct the GPU 610 to render one or more graphics primitives into displayable graphics images.
アプリケーション620がグラフィックコマンドを発行する場合、グラフィックコマンドはGPU610に命令して、1つ以上のグラフィックプリミティブを表示可能なグラフィック画像にレンダリングする。
Based on the graphics instructions issued by applications 620 to the user mode driver 630 ,
アプリケーション620からユーザモードドライバ630に発行されたグラフィック命令に基づいて、
the user mode driver 630 formulates one or more graphics commands that specify one or more operations for the GPU 610 to perform for rendering graphics.
ユーザモードドライバ630は、グラフィックのレンダリングを実行するためにGPU610の1つ以上の動作を指定する1つ以上のグラフィックコマンドを作成する。