JP5456812B2 - タイルベース・レンダリング・システムにおけるマルチコアの形状処理 - Google Patents
タイルベース・レンダリング・システムにおけるマルチコアの形状処理 Download PDFInfo
- Publication number
- JP5456812B2 JP5456812B2 JP2012058179A JP2012058179A JP5456812B2 JP 5456812 B2 JP5456812 B2 JP 5456812B2 JP 2012058179 A JP2012058179 A JP 2012058179A JP 2012058179 A JP2012058179 A JP 2012058179A JP 5456812 B2 JP5456812 B2 JP 5456812B2
- Authority
- JP
- Japan
- Prior art keywords
- shape
- list
- data
- tiled
- processing unit
- 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.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims description 136
- 238000009877 rendering Methods 0.000 title claims description 21
- 238000000034 method Methods 0.000 claims description 49
- 230000003139 buffering effect Effects 0.000 claims description 15
- 239000003550 marker Substances 0.000 claims description 14
- 241001522296 Erithacus rubecula Species 0.000 claims description 8
- 238000012544 monitoring process Methods 0.000 claims description 6
- 102100034190 Glypican-1 Human genes 0.000 description 5
- 101001070736 Homo sapiens Glypican-1 Proteins 0.000 description 5
- 238000012360 testing method Methods 0.000 description 4
- 238000002156 mixing Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 101150100594 PRIM1 gene Proteins 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 101150075500 prim2 gene Proteins 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000011064 split stream procedure Methods 0.000 description 1
- 238000004148 unit process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Image Generation (AREA)
- Image Processing (AREA)
Description
形状プロセッサ及びタイリング・プロセッサにわたる負荷を均等に分配するために、ラウンドロビン・ベースで又は個々のプロセッサにかかる負荷に基づいて、入力データをプロセッサにわたって分割する必要がある。しかしながら、各プロセッサは、オブジェクトのタイルリストを局所的に生成するので、オブジェクトがタイルに挿入される順序の保存には、プロセッサが、タイル毎のオブジェクト・リストに書き込む順序を制御することが必要である。この制御は、通常、存在するGPC(グラフィックス処理コア)の各々の間の通信を必要とし、このことは、存在するコアの数をスケーリングするときに、それらの設計を変更する必要があることを意味する。
〔請求項1〕
三次元グラフィックス・レンダリング・システムにおいて形状処理及びタイリングを行なうための方法であって、
レンダリングされるシーンについてのグラフィックス・プリミティブ・データのストリームを提供するステップであって、各々のプリミティブは、そのプリミティブを構成する複数の三角形を定めるデータを含む、ステップと、
複数の形状処理ユニット間でプリミティブ・データを分割するステップと、
各々の形状処理ユニットにより処理される各三角形について、三角形を、その形状処理ユニットと関連した1組のタイリングされた形状リストにおけるそれぞれのタイルリストに挿入するステップと、
三角形が挿入される各タイルについて、そのタイルへのリファレンスを、その形状処理ユニットと関連したタイル・リファレンス・リストに挿入するステップと、
データが前記形状処理ユニットに分配された順序で、各々の形状処理ユニットと関連した前記タイル・リファレンス・リストからデータを読み取るステップと、
前記タイル・リファレンス・リスト及び各々の形状処理ユニットと関連した前記タイリングされた形状から、レンダリングされる前記シーンについてのタイリング・データを生成するステップと、
を含むことを特徴とする方法。
〔請求項2〕
前記プリミティブ・データを分割するステップは、ラウンドロビン・ベースで分割するステップを含むことを特徴とする、請求項1に記載の方法。
〔請求項3〕
前記プリミティブ・データを分割するステップは、実質的に類似した量のプリミティブ・データを各々の形状処理ユニットに分配するよう配置されることを特徴とする、請求項1又は請求項2に記載の方法。
〔請求項4〕
前記プリミティブ・データを分割するステップは、各々のグラフィック処理ユニットにかかる処理負荷を監視し、それらの処理負荷に応じてグラフィック処理ユニット間でデータを分割するステップを含むことを特徴とする、請求項1に記載の方法。
〔請求項5〕
前記プリミティブ・データを分割するステップと、それを前記グラフィックス処理ユニットに送るステップとの間にプリミティブ・データをバッファに入れるステップを含むことを特徴とする、前記請求項のいずれかに記載の方法。
〔請求項6〕
前記タイリング・データを生成するステップの前に、タイル・リファレンス・リスト及び前記タイリングされた形状リストからのデータをバッファに入れるステップを含むことを特徴とする、前記請求項のいずれかに記載の方法。
〔請求項7〕
前記タイリング・データを生成するステップは、前記シーンのレンダリングに用いるためのマスター・タイルリストを生成するステップを含むことを特徴とする、前記請求項のいずれかに記載の方法。
〔請求項8〕
三次元グラフィックス・レンダリング・システムにおいて形状処理及びタイリングを行なうためのシステムであって、
レンダリングされるシーンについてのグラフィックス・プリミティブ・データのストリームを提供するための手段であって、各々のプリミティブは、そのプリミティブを構成する複数の三角形を定めるデータを含む、手段と、
複数の形状処理ユニット間でプリミティブ・データを分割するための手段と、
処理される各三角形について、三角形を、その形状処理ユニットと関連した1組のタイリングされた形状リストにおけるタイリングされた形状リストに挿入するように構成された形状処理ユニットと、
三角形が挿入される各タイルについて、そのタイルへのリファレンスをその形状処理ユニットと関連したタイル・リファレンス・リストに挿入するための手段と、
データが前記形状処理ユニットに分配された順序で、各々の形状処理ユニットと関連した前記タイル・リファレンス・リストからデータを読み取るための手段と、
前記タイル・リファレンス・リスト及び各々の形状処理ユニットと関連した前記タイリングされた形状から、レンダリングされる前記シーンについてのタイリング・データ・リストを生成するための手段と、
を含むことを特徴とするシステム。
〔請求項9〕
前記プリミティブ・データを分割するための手段は、ラウンドロビン・ベースでこれを行なうことを特徴とする、請求項8に記載のシステム。
〔請求項10〕
前記プリミティブ・データを分割するための手段は、実質的に類似した量のプリミティブ・データを各々の形状処理ユニットに分配するよう配置されることを特徴とする、請求項8又は請求項9に記載のシステム。
〔請求項11〕
前記プリミティブ・データを分割するための手段は、各々のグラフィックス処理ユニットにかかる処理負荷を監視するための手段と、それらの処理負荷に応じてグラフィック処理ユニット間でデータを分割するための手段とを含むことを特徴とする、請求項8に記載のシステム。
〔請求項12〕
前記プリミティブ・データを分割するための手段と前記グラフィックス処理ユニットとの間でプリミティブ・データをバッファに入れるための手段を含むことを特徴とする、請求項8から請求項11までのいずれかに記載のシステム。
〔請求項13〕
マスター・タイルリストを生成するための前記手段に提供する前に、タイル・リファレンス・リスト及び前記タイリングされた形状からのデータをバッファに入れるための手段を含むことを特徴とする、請求項8から請求項12までのいずれかに記載のシステム。
〔請求項14〕
前記タイリング・データを生成するための手段は、前記タイリング・データが挿入されるマスター・タイルリストを含むことを特徴とする、請求項8から請求項13までのいずれかに記載のシステム。
〔請求項15〕
三次元グラフィックス・レンダリング・システムにおいて、形状処理及びタイリングを行なうための方法であって、
レンダリングされるシーンについてのグラフィックス・プリミティブ・データのストリームを提供するステップであって、各々のプリミティブは、そのプリミティブを構成する複数の三角形を定めるデータを含む、ステップと、
複数の形状処理ユニット間でプリミティブ・データを分割するステップと、
各々の形状処理ユニットにより処理される各三角形について、三角形を、その形状処理ユニットと関連した1組のタイリングされた形状リストにおけるそれぞれのタイルリストに挿入するステップと、
各タイルについて、マーカーを、各々のグラフィックス処理ユニットにより処理される形状の各ブロックについてのその形状処理ユニットと関連した前記タイリングされた形状リストに挿入するステップと、
各々の形状処理ユニットと関連した前記タイリングされた形状リストから、レンダリングされる前記シーンについてのタイリング・データを生成するステップと、
前記タイリングされた形状リスト内の前記マーカーを用いて、異なるグラフィックス処理ユニットからのタイリングされた形状リスト間でいつ切り換えるかを示すステップと、を含むことを特徴とする方法。
〔請求項16〕
前記プリミティブ・データを分割するステップは、ラウンドロビン・ベースで分割するステップを含むことを特徴とする、請求項15に記載の方法。
〔請求項17〕
前記プリミティブ・データを分割するステップは、実質的に類似した量のプリミティブ・データを各々の形状処理ユニットに分配するよう配置されることを特徴とする、請求項15又は請求項16に記載の方法。
〔請求項18〕
前記プリミティブ・データを分割するステップは、各々のグラフィック処理ユニットにかかる処理負荷を監視し、それらの処理負荷に応じてグラフィック処理ユニット間でデータを分割するステップを含むことを特徴とする、請求項15に記載の方法。
〔請求項19〕
前記プリミティブ・データを分割するステップと、それを前記グラフィックス処理ユニットに送るステップとの間にプリミティブ・データをバッファに入れるステップを含むことを特徴とする、請求項15から請求項18までのいずれかに記載の方法。
〔請求項20〕
前記タイリング・データを生成するステップの前に、タイル・リファレンス・リスト及び前記タイリングされた形状リストからのデータをバッファに入れるステップを含むことを特徴とする、請求項15から請求項19までのいずれかに記載の方法。
〔請求項21〕
前記タイリングされた形状リスト内の前記マーカーを用いるステップは、前記タイリングされた形状リストの各々から領域ヘッダを読み取るステップと、前記シーンのレンダリングに用いるために、タイルごとに順番に、各々のグラフィックス処理ユニット・リストにより生成された前記タイリングされた形状リストの前記開始点を指し示すポインタ・アレイに、タイリング・リスト・ポインタを書き込むステップとを含むことを特徴とする、請求項15から請求項20までのいずれかに記載の方法。
〔請求項22〕
三次元グラフィックス・レンダリング・システムにおいて、形状処理及びタイリングを行なうためのシステムであって、
レンダリングされるシーンについてのグラフィックス・プリミティブ・データのストリームを提供するための手段であって、各々のプリミティブは、そのプリミティブを構成する複数の三角形を定めるデータを含む、手段と、
複数の形状処理ユニット間でプリミティブ・データを分割するための手段と、
処理される各三角形について、三角形を、その形状処理ユニットと関連した1組のタイリングされた形状リストにおけるタイリングされた形状リストに挿入するように配置された各々の形状処理ユニットと、
そのグラフィックス処理ユニットにより処理される形状の各ブロックについて、各タイルについてのマーカーを、その形状処理ユニットと関連した前記タイリングされた形状リストに挿入するための手段と、
各々の形状処理ユニットと関連した前記タイリングされた形状からレンダリングされる前記シーンについてのタイリング・データを生成し、前記タイリングされた形状リストにおける前記マーカーを用いて異なるグラフィックス処理コアからのタイリングされた形状リスト間でいつ切り替えるかを示すための手段と、
を含むことを特徴とするシステム。
〔請求項23〕
前記プリミティブ・データを分割するための手段は、ラウンドロビン・ベースでこれを行なうことを特徴とする、請求項22に記載のシステム。
〔請求項24〕
前記プリミティブ・データを分割するための手段は、実質的に類似した量のプリミティブ・データを各々の形状処理ユニットに分配するよう配置されることを特徴とする、請求項22又は請求項23に記載のシステム。
〔請求項25〕
前記プリミティブ・データを分割するための手段は、各々のグラフィックス処理ユニットにかかる処理負荷を監視するための手段と、それらの処理負荷に応じてグラフィック処理ユニット間でデータを分割するための手段とを含むことを特徴とする、請求項22に記載のシステム。
〔請求項26〕
前記プリミティブ・データを分割するための手段と前記グラフィックス処理ユニットとの間でプリミティブ・データをバッファに入れるための手段を含むことを特徴とする、請求項22から請求項25までのいずれかに記載のシステム。
〔請求項27〕
タイル・リファレンス・リスト及び前記タイリングされた形状からのデータを、前記タイリング・データを生成するための手段に提供する前にバッファに入れるための手段を含むことを特徴とする、請求項22から請求項25までのいずれかに記載のシステム。
〔請求項28〕
前記タイリングされた形状リスト内の前記マーカーを用いるための手段は、前記タイリングされた形状リストの各々から領域ヘッダを読み取るための手段と、各々のグラフィックス処理ユニットにより生成された前記タイリングされた形状リストの前記開始点を指し示すポインタ・アレイに、タイリング・リスト・ポインタを書き込むための手段と、前記シーンのレンダリングに用いるために、タイルごとに順番に前記タイリングされた形状リストをフェッチするための手段とを含むことを特徴とする、請求項11から請求項27までのいずれかに記載のシステム。
310、610、805、910:ストリーム分割器
320、330、650、660、940、950:GPC
340、350:形状処理コア(GPC)
360、370、410、430、960、970、1010、1030:タイリングされた形状リスト
365、375、400、420:タイル・リファレンス・リスト(TRL)
380:マスター・タイリング・ユニット(MTU)
390:マスター・タイルリスト
500、1000、1020:領域ヘッダ
520、530:タイル
510:トップレベルのタイルリスト
620、630、640、650:ブロック
700、1200:プリミティブ及びコマンド・フェッチ・ユニット
705、1205:ストリーム分割器ユニット
712、714、1212、1214:FIFO
715、716、1215、1216:「ローカル」プリミティブ・フェッチ・ユニット
720、721、820、821、1220、1221:形状処理ユニット
725、726、1225、1226:ローカル・タイリング・ユニット
730、731:ローカル・タイルリスト
740、741:タイル・リファレンスFIFO
760:マスター領域リスト
870:サービス・オーダーFIFO
1040:「パイプ・インターリーブ・マーカー」(PIM)
1230、1231:コア毎のタイルリスト
Claims (14)
- 三次元グラフィックス・レンダリング・システムにおいて、形状処理及びタイリングを行なうための方法であって、
レンダリングされるシーンについてのグラフィックス・プリミティブ・データのストリームを提供するステップであって、各々のプリミティブは、そのプリミティブを構成する複数の三角形を定めるデータを含む、ステップと、
複数の形状処理ユニット間でプリミティブ・データを分割するステップであって、前記複数の形状処理ユニットの各々が、自身の領域ヘッダと自身のタイリングされた形状リストとを発生し、各領域ヘッダがタイリングされた形状リストを指し示している、前記ステップと、
各々の形状処理ユニットにより処理される各三角形について、三角形を、その形状処理ユニットと関連した1組のタイリングされた形状リストにおけるそれぞれのタイルリストに挿入するステップと、
各タイルについて、形状処理ユニットが、パイプ・インターリーブ・マーカーを、各々のグラフィック処理ユニットにより処理される形状の各ブロックについてのその形状処理ユニットと関連した前記タイリングされた形状リストに挿入するステップであって、前記パイプ・インターリーブ・マーカーは、ラスター化の際に、単一の処理コアにより正しい順序で前記形状リストをトラバースするのを可能にするために用いられる前記ステップと、
各々の形状処理ユニットと関連した前記タイリングされた形状リストから、レンダリングされる前記シーンについてのタイリング・データを生成するステップと、
前記タイリングされた形状リスト内の前記パイプ・インターリーブ・マーカーを用いて、異なるグラフィックス処理ユニットからのタイリングされた形状リスト間でいつ切り換えるかを示すステップと、を含むことを特徴とする方法。 - 前記プリミティブ・データを分割するステップは、ラウンドロビン・ベースで分割するステップを含むことを特徴とする、請求項1に記載の方法。
- 前記プリミティブ・データを分割するステップは、類似した量のプリミティブ・データを各々の形状処理ユニットに分配するよう配置されることを特徴とする、請求項1又は請求項2に記載の方法。
- 前記プリミティブ・データを分割するステップは、各々のグラフィック処理ユニットにかかる処理負荷を監視し、それらの処理負荷に応じてグラフィック処理ユニット間でデータを分割するステップを含むことを特徴とする、請求項1に記載の方法。
- 前記プリミティブ・データを分割するステップと、それを前記グラフィックス処理ユニットに送るステップとの間にプリミティブ・データをバッファに入れるステップを含むことを特徴とする、請求項1から請求項4までのいずれかに記載の方法。
- 前記タイリング・データを生成するステップの前に、タイル・リファレンス・リスト及び前記タイリングされた形状リストからのデータをバッファに入れるステップを含むことを特徴とする、請求項1から請求項5までのいずれかに記載の方法。
- 前記タイリングされた形状リスト内の前記マーカーを用いるステップは、前記タイリングされた形状リストの各々から領域ヘッダを読み取るステップと、前記シーンのレンダリングに用いるために、タイルごとに順番に、各々のグラフィックス処理ユニット・リストにより生成された前記タイリングされた形状リストの開始点を指し示すポインタ・アレイに、タイリング・リスト・ポインタを書き込むステップとを含むことを特徴とする、
請求項1から請求項6までのいずれかに記載の方法。 - 三次元グラフィックス・レンダリング・システムにおいて、形状処理及びタイリングを行なうためのシステムであって、
レンダリングされるシーンについてのグラフィックス・プリミティブ・データのストリームを提供するための手段であって、各々のプリミティブは、そのプリミティブを構成する複数の三角形を定めるデータを含む、手段と、
複数の形状処理ユニット間でプリミティブ・データを分割するための手段であって、前記複数の形状処理ユニットの各々が、自身の領域ヘッダと自身のタイリングされた形状リストとを発生し、各領域ヘッダがタイリングされた形状リストを指し示している、前記手段と、
処理される各三角形について、三角形を、その形状処理ユニットと関連した1組のタイリングされた形状リストにおけるタイリングされた形状リストに挿入するように配置された各々の形状処理ユニットと、
そのグラフィックス処理ユニットにより処理される形状の各ブロックについて、各タイルについてのパイプ・インターリーブ・マーカーを、形状処理ユニットによって、その形状処理ユニットと関連した前記タイリングされた形状リストに挿入するための手段であって、前記パイプ・インターリーブ・マーカーは、ラスター化の際に、単一の処理コアにより正しい順序で前記形状リストをトラバースするのを可能にするために用いられる前記手段と、
各々の形状処理ユニットと関連した前記タイリングされた形状からレンダリングされる前記シーンについてのタイリング・データを生成する手段と、
前記タイリングされた形状リストにおける前記パイプ・インターリーブ・マーカーを用いて異なるグラフィックス処理コアからのタイリングされた形状リスト間でいつ切り替えるかを示すための手段と、
を含むことを特徴とするシステム。 - 前記プリミティブ・データを分割するための手段は、ラウンドロビン・ベースでこれを行なうことを特徴とする、請求項8に記載のシステム。
- 前記プリミティブ・データを分割するための手段は、類似した量のプリミティブ・データを各々の形状処理ユニットに分配するよう配置されることを特徴とする、請求項8又は請求項9に記載のシステム。
- 前記プリミティブ・データを分割するための手段は、各々のグラフィックス処理ユニットにかかる処理負荷を監視するための手段と、それらの処理負荷に応じてグラフィック処理ユニット間でデータを分割するための手段とを含むことを特徴とする、請求項8に記載のシステム。
- 前記プリミティブ・データを分割するための手段と前記グラフィックス処理ユニットとの間でプリミティブ・データをバッファに入れるための手段を含むことを特徴とする、請求項8から請求項11までのいずれかに記載のシステム。
- タイル・リファレンス・リスト及び前記タイリングされた形状からのデータを、前記タイリング・データを生成するための手段に提供する前にバッファに入れるための手段を含むことを特徴とする、請求項8から請求項11までのいずれかに記載のシステム。
- 前記いつ切り替えるかを示すための手段は、前記タイリングされた形状リストの各々から領域ヘッダを読み取るための手段と、各々のグラフィックス処理ユニットにより生成された前記タイリングされた形状リストの開始点を指し示すポインタ・アレイに、タイリング・リスト・ポインタを書き込むための手段と、前記シーンのレンダリングに用いるために、タイルごとに順番に前記タイリングされた形状リストをフェッチするための手段とを含むことを特徴とする、請求項8から請求項13までのいずれかに記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB0723536.9A GB0723536D0 (en) | 2007-11-30 | 2007-11-30 | Multi-core geometry processing in a tile based rendering system |
GB0723536.9 | 2007-11-30 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010535457A Division JP5366967B2 (ja) | 2007-11-30 | 2008-12-01 | タイルベース・レンダリング・システムにおけるマルチコアの形状処理 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012146323A JP2012146323A (ja) | 2012-08-02 |
JP5456812B2 true JP5456812B2 (ja) | 2014-04-02 |
Family
ID=38962451
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010535457A Active JP5366967B2 (ja) | 2007-11-30 | 2008-12-01 | タイルベース・レンダリング・システムにおけるマルチコアの形状処理 |
JP2012058179A Active JP5456812B2 (ja) | 2007-11-30 | 2012-03-15 | タイルベース・レンダリング・システムにおけるマルチコアの形状処理 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010535457A Active JP5366967B2 (ja) | 2007-11-30 | 2008-12-01 | タイルベース・レンダリング・システムにおけるマルチコアの形状処理 |
Country Status (5)
Country | Link |
---|---|
US (3) | US8310487B2 (ja) |
EP (2) | EP2227781B1 (ja) |
JP (2) | JP5366967B2 (ja) |
GB (2) | GB0723536D0 (ja) |
WO (1) | WO2009068895A1 (ja) |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0723536D0 (en) * | 2007-11-30 | 2008-01-09 | Imagination Tech Ltd | Multi-core geometry processing in a tile based rendering system |
TWI382348B (zh) * | 2008-10-24 | 2013-01-11 | Univ Nat Taiwan | 多核心系統及其排程方法 |
GB0823468D0 (en) * | 2008-12-23 | 2009-01-28 | Imagination Tech Ltd | Display list control stream grouping in tile based 3D computer graphics systems |
KR101511273B1 (ko) * | 2008-12-29 | 2015-04-10 | 삼성전자주식회사 | 멀티 코어 프로세서를 이용한 3차원 그래픽 렌더링 방법 및시스템 |
GB2473513B (en) * | 2009-09-14 | 2012-02-01 | Sony Comp Entertainment Europe | A method and apparatus for determining processor performance |
US8704836B1 (en) * | 2009-10-19 | 2014-04-22 | Nvidia Corporation | Distributing primitives to multiple rasterizers |
US9536341B1 (en) * | 2009-10-19 | 2017-01-03 | Nvidia Corporation | Distributing primitives to multiple rasterizers |
GB0922126D0 (en) | 2009-12-17 | 2010-02-03 | Advanced Risc Mach Ltd | Graphics processing systems |
US9058685B2 (en) * | 2010-03-11 | 2015-06-16 | Broadcom Corporation | Method and system for controlling a 3D processor using a control list in memory |
KR101799978B1 (ko) * | 2011-06-17 | 2017-11-22 | 삼성전자주식회사 | 타일 근접성을 사용하는 타일 기반 렌더링 방법 및 장치 |
US10217270B2 (en) * | 2011-11-18 | 2019-02-26 | Intel Corporation | Scalable geometry processing within a checkerboard multi-GPU configuration |
WO2013074124A1 (en) * | 2011-11-18 | 2013-05-23 | Intel Corporation | Scalable geometry processing within a checkerboard multi-gpu configuration |
US9633458B2 (en) * | 2012-01-23 | 2017-04-25 | Nvidia Corporation | Method and system for reducing a polygon bounding box |
KR20130105088A (ko) * | 2012-03-16 | 2013-09-25 | 삼성전자주식회사 | 복수의 픽셀 코어를 제어하는 타일 기반 렌더링 장치 및 방법 |
GB2500284B (en) * | 2012-09-12 | 2014-04-30 | Imagination Tech Ltd | Tile based computer graphics |
US10438314B2 (en) * | 2012-10-26 | 2019-10-08 | Nvidia Corporation | Two-pass cache tile processing for visibility testing in a tile-based architecture |
US10186070B2 (en) | 2012-11-02 | 2019-01-22 | Imagination Technologies Limited | On demand geometry and acceleration structure creation |
JP2014161450A (ja) * | 2013-02-22 | 2014-09-08 | Sammy Corp | ぱちんこ遊技機 |
US10957094B2 (en) | 2013-03-29 | 2021-03-23 | Advanced Micro Devices, Inc. | Hybrid render with preferred primitive batch binning and sorting |
US10169906B2 (en) * | 2013-03-29 | 2019-01-01 | Advanced Micro Devices, Inc. | Hybrid render with deferred primitive batch binning |
CN103559679B (zh) * | 2013-11-11 | 2019-07-02 | 济南大学 | 一种基于流水线和状态机的三角形快速分块设计方法 |
GB2517809B (en) * | 2014-02-13 | 2015-07-22 | Imagination Tech Ltd | Processing of primitive blocks in parallel tiling engine pipes |
KR102111740B1 (ko) | 2014-04-03 | 2020-05-15 | 삼성전자주식회사 | 영상 데이터를 처리하는 방법 및 디바이스. |
GB2526598B (en) * | 2014-05-29 | 2018-11-28 | Imagination Tech Ltd | Allocation of primitives to primitive blocks |
US9569811B2 (en) | 2014-06-26 | 2017-02-14 | Qualcomm Incorporated | Rendering graphics to overlapping bins |
US10535114B2 (en) * | 2015-08-18 | 2020-01-14 | Nvidia Corporation | Controlling multi-pass rendering sequences in a cache tiling architecture |
GB2546810B (en) * | 2016-02-01 | 2019-10-16 | Imagination Tech Ltd | Sparse rendering |
KR102646906B1 (ko) | 2016-11-17 | 2024-03-12 | 삼성전자주식회사 | 타일 기반 렌더링 방법 및 장치 |
KR102637736B1 (ko) | 2017-01-04 | 2024-02-19 | 삼성전자주식회사 | 그래픽스 처리 방법 및 시스템 |
US10942746B2 (en) * | 2017-08-31 | 2021-03-09 | Rail Vision Ltd | System and method for high throughput in multiple computations |
GB2567207B (en) * | 2017-10-06 | 2020-02-19 | Advanced Risc Mach Ltd | Graphics processing systems |
GB2567436B (en) | 2017-10-10 | 2019-10-02 | Imagination Tech Ltd | Geometry to tiling arbiter for tile-based rendering system |
GB2578320B (en) | 2018-10-23 | 2023-07-05 | Advanced Risc Mach Ltd | Graphics processing |
US11170555B2 (en) | 2019-11-27 | 2021-11-09 | Arm Limited | Graphics processing systems |
US11216993B2 (en) | 2019-11-27 | 2022-01-04 | Arm Limited | Graphics processing systems |
US11210821B2 (en) * | 2019-11-27 | 2021-12-28 | Arm Limited | Graphics processing systems |
US11210847B2 (en) | 2019-11-27 | 2021-12-28 | Arm Limited | Graphics processing systems |
GB2611377B (en) | 2022-03-30 | 2023-11-01 | Imagination Tech Ltd | Memory allocation for 3-D graphics rendering |
GB2611374A (en) * | 2022-03-30 | 2023-04-05 | Imagination Tech Ltd | Memory management for multicore 3-D graphics rendering |
GB2611376B (en) | 2022-03-30 | 2023-11-01 | Imagination Tech Ltd | Multi-core draw splitting |
CN116485629A (zh) * | 2023-06-21 | 2023-07-25 | 芯动微电子科技(珠海)有限公司 | 一种多gpu并行几何处理的图形处理方法及系统 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2770598B2 (ja) * | 1990-06-13 | 1998-07-02 | 株式会社日立製作所 | 図形表示方法およびその装置 |
JPH0520466A (ja) * | 1991-07-12 | 1993-01-29 | Canon Inc | 画像処理方法及びその装置 |
US5821950A (en) * | 1996-04-18 | 1998-10-13 | Hewlett-Packard Company | Computer graphics system utilizing parallel processing for enhanced performance |
US5745125A (en) * | 1996-07-02 | 1998-04-28 | Sun Microsystems, Inc. | Floating point processor for a three-dimensional graphics accelerator which includes floating point, lighting and set-up cores for improved performance |
GB2343598B (en) | 1998-11-06 | 2003-03-19 | Videologic Ltd | Image processing apparatus |
GB2343603B (en) * | 1998-11-06 | 2003-04-02 | Videologic Ltd | Shading 3-dimensional computer generated images |
US6344852B1 (en) * | 1999-03-17 | 2002-02-05 | Nvidia Corporation | Optimized system and method for binning of graphics data |
US6556200B1 (en) * | 1999-09-01 | 2003-04-29 | Mitsubishi Electric Research Laboratories, Inc. | Temporal and spatial coherent ray tracing for rendering scenes with sampled and geometry data |
US20020039100A1 (en) * | 2000-06-08 | 2002-04-04 | Stephen Morphet | Memory management for systems for generating 3-dimensional computer images |
US6747658B2 (en) * | 2001-12-31 | 2004-06-08 | Intel Corporation | Automatic memory management for zone rendering |
GB2387094B (en) * | 2002-03-26 | 2005-12-07 | Imagination Tech Ltd | 3-D Computer graphics rendering system |
US7176914B2 (en) * | 2002-05-16 | 2007-02-13 | Hewlett-Packard Development Company, L.P. | System and method for directing the flow of data and instructions into at least one functional unit |
US7002586B2 (en) * | 2003-08-29 | 2006-02-21 | Sun Microsystems, Inc. | Method and apparatus for vertex splitting in a graphics system |
CN100576249C (zh) * | 2004-05-24 | 2009-12-30 | Nxp股份有限公司 | 基于贴片的图形渲染 |
US7898545B1 (en) * | 2004-12-14 | 2011-03-01 | Nvidia Corporation | Apparatus, system, and method for integrated heterogeneous processors |
JP2008538620A (ja) * | 2005-01-25 | 2008-10-30 | ルーシッド インフォメイション テクノロジー リミテッド | モノリシック構成のシリコン・チップ上に多数のグラフィックス・コアを用いるグラフィック処理及び表示システム |
GB0519597D0 (en) | 2005-09-26 | 2005-11-02 | Imagination Tech Ltd | Scalable multi-threaded media processing architecture |
GB0524804D0 (en) * | 2005-12-05 | 2006-01-11 | Falanx Microsystems As | Method of and apparatus for processing graphics |
US7580040B2 (en) * | 2005-11-10 | 2009-08-25 | Via Technologies, Inc. | Interruptible GPU and method for processing multiple contexts and runlists |
GB2461821B (en) * | 2007-09-12 | 2010-06-30 | Imagination Tech Ltd | Methods and systems for generating 3-dimensional computer images |
GB0723536D0 (en) * | 2007-11-30 | 2008-01-09 | Imagination Tech Ltd | Multi-core geometry processing in a tile based rendering system |
-
2007
- 2007-11-30 GB GBGB0723536.9A patent/GB0723536D0/en not_active Ceased
-
2008
- 2008-12-01 EP EP08854331A patent/EP2227781B1/en active Active
- 2008-12-01 JP JP2010535457A patent/JP5366967B2/ja active Active
- 2008-12-01 GB GB0821937A patent/GB2457525C/en active Active
- 2008-12-01 EP EP12177379.0A patent/EP2521089B1/en active Active
- 2008-12-01 US US12/315,263 patent/US8310487B2/en active Active
- 2008-12-01 WO PCT/GB2008/003992 patent/WO2009068895A1/en active Application Filing
-
2012
- 2012-03-15 JP JP2012058179A patent/JP5456812B2/ja active Active
- 2012-09-11 US US13/610,765 patent/US8502829B2/en active Active
-
2013
- 2013-08-05 US US13/959,414 patent/US9105131B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20090174706A1 (en) | 2009-07-09 |
JP2012146323A (ja) | 2012-08-02 |
US9105131B2 (en) | 2015-08-11 |
GB0821937D0 (en) | 2009-01-07 |
US8502829B2 (en) | 2013-08-06 |
JP5366967B2 (ja) | 2013-12-11 |
GB2457525A (en) | 2009-08-19 |
EP2521089A1 (en) | 2012-11-07 |
EP2521089B1 (en) | 2014-03-19 |
US20140071122A1 (en) | 2014-03-13 |
EP2227781A1 (en) | 2010-09-15 |
WO2009068895A1 (en) | 2009-06-04 |
GB2457525C (en) | 2014-07-16 |
GB0723536D0 (en) | 2008-01-09 |
GB2457525B (en) | 2010-05-26 |
US20130002663A1 (en) | 2013-01-03 |
JP2011505622A (ja) | 2011-02-24 |
US8310487B2 (en) | 2012-11-13 |
EP2227781B1 (en) | 2012-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5456812B2 (ja) | タイルベース・レンダリング・システムにおけるマルチコアの形状処理 | |
US8941653B2 (en) | Order-preserving distributed rasterizer | |
US8749564B2 (en) | Barrier commands in a cache tiling architecture | |
US8704836B1 (en) | Distributing primitives to multiple rasterizers | |
US10032243B2 (en) | Distributed tiled caching | |
CN107038742B (zh) | 屏幕空间管线中的多通道渲染 | |
US8760460B1 (en) | Hardware-managed virtual buffers using a shared memory for load distribution | |
US9830741B2 (en) | Setting downstream render state in an upstream shader | |
US9105125B2 (en) | Load balancing for optimal tessellation performance | |
US10332310B2 (en) | Distributed index fetch, primitive assembly, and primitive batching | |
US8928679B2 (en) | Work distribution for higher primitive rates | |
US10453168B2 (en) | Techniques for maintaining atomicity and ordering for pixel shader operations | |
US10430989B2 (en) | Multi-pass rendering in a screen space pipeline | |
GB2496394A (en) | Jagged edge aliasing removal using multisample anti-aliasing (MSAA) with reduced data storing for pixel samples wholly within primitives | |
US20170116700A1 (en) | Techniques for maintaining atomicity and ordering for pixel shader operations | |
US9536341B1 (en) | Distributing primitives to multiple rasterizers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130131 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20130430 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20130507 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130730 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130902 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130913 |
|
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: 20131209 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140108 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5456812 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |