JP2017517799A - ソートミドルアーキテクチャにおけるフレームのフレームコヒーレンシへの活用 - Google Patents

ソートミドルアーキテクチャにおけるフレームのフレームコヒーレンシへの活用 Download PDF

Info

Publication number
JP2017517799A
JP2017517799A JP2016561851A JP2016561851A JP2017517799A JP 2017517799 A JP2017517799 A JP 2017517799A JP 2016561851 A JP2016561851 A JP 2016561851A JP 2016561851 A JP2016561851 A JP 2016561851A JP 2017517799 A JP2017517799 A JP 2017517799A
Authority
JP
Japan
Prior art keywords
tile
current
same
reduced representation
reduced
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
Application number
JP2016561851A
Other languages
English (en)
Other versions
JP6337322B2 (ja
Inventor
フェルナンデス、ファン
カサド、ジャヴィアー カッレテロ
カサド、ジャヴィアー カッレテロ
マルチェッロ、ペデロ
ジー. アケニン−モラー、トマス
ジー. アケニン−モラー、トマス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of JP2017517799A publication Critical patent/JP2017517799A/ja
Application granted granted Critical
Publication of JP6337322B2 publication Critical patent/JP6337322B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/28Indexing scheme for image data processing or generation, in general involving image processing hardware
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2330/00Aspects of power supply; Aspects of display protection and defect management
    • G09G2330/02Details of power systems and of start or stop of display operation
    • G09G2330/021Power management, e.g. power saving
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/122Tiling

Abstract

先行フレームにおいて計算された複数のピクセル値は、現在のフレームに再利用され、ソートミドルアーキテクチャにおいて動作し得る。全ての三角形、ユニフォーム、テクスチャ、シェーダ等を含む、タイルにおいて用いられる全てのデータのハッシュまたはいくつかの他のコンパクト表現は、各タイルについて計算され、格納される。次のフレームをレンダリングする場合、当該コンパクト表現は、各タイルについて再度計算される。ソートミドルアーキテクチャにおいて、ラスタライズの直前の自然なブレークポイントが存在する。このブレークポイントにおいて、コンパクト表現は、同一のタイルについて先行フレームにおいて計算されたコンパクト表現と比較され得る。これらのコンパクト表現が同一である場合、このタイルについて何もレンダリングする必要はない。これに代えて、タイルにおける先行フレームのカラーバッファまたは他のバッファの複数のコンテンツは、現在のフレームについてタイルの同一のバッファに移動され得る。

Description

これは、グラフィックス処理に関する。
モバイルデバイスにソートミドルアーキテクチャを用いることは一般的である。あらゆるグラフィックスアプリケーションにおけるように、電力使用量を低減することは重要である。
ジオメトリ処理は、各プロセッサにシーンにおける複数のプリミティブのサブセットを割り当てることにより並列にされ得る。ラスタライズは、各プロセッサに必要なピクセル計算のある部分を割り当てることにより並列にされ得る。レンダリングは、各ピクセルに対する各プリミティブの影響を算出することを含む。プリミティブは、任意の箇所で実際の表示スクリーン内、またはその外側の任意の箇所に投影される可能性がある。レンダリングは、スクリーンに対する複数のプリミティブをソートする。ソートは、ソートファーストと呼ばれるジオメトリ処理中、ソートミドルと呼ばれるジオメトリ処理とラスタライズとの間、またはソートラストと呼ばれるラスタライズ中に行われ得る。ソートファーストは、生の複数のプリミティブを、そのスクリーン空間パラメータが知られる前に再分配することを意味し、ソートミドルは、複数のスクリーン空間プリミティブを再分配することを意味し、ソートラストは、複数のピクセル、サンプル、またはピクセルフラグメントを再分配することを意味する。
いくつかの実施形態は、以下の図面に関して説明される。
一実施形態の概略図である。 一実施形態のフロー図である。 一実施形態のシステム図である。 一実施形態の前方立面図である。
ソートミドルアーキテクチャにおいて動作して、先行フレームにおいて計算された複数のピクセル値は、現在のフレームに再利用され得る。全ての三角形、ユニフォーム、テクスチャ、シェーダ等を含む、タイルにおいて用いられる全てのデータのハッシュまたはいくつかの他のコンパクト表現は、各タイルについて計算され、格納される。次のフレームをレンダリングする場合、当該コンパクト表現は、各タイルについて再度計算される。ソートミドルアーキテクチャにおいて、ラスタライズの直前の自然なブレークポイントが存在する。このブレークポイントにおいて、コンパクト表現は、同一のタイルについて先行フレームにおいて計算されたコンパクト表現と比較され得る。これらのコンパクト表現が同一である場合、このタイルについて何もレンダリングする必要はない。これに代えて、タイルにおける先行フレームのカラーバッファまたは他のバッファの複数のコンテンツは、現在のフレームについてタイルの同一のバッファに移動され、またはそうでなければ再利用され得る。
この技術は、ラスタライズおよびピクセルシェーディングの前に機能し、カラーバッファに加えて他の複数のバッファに適用され得る。
タイリングアーキテクチャとも呼ばれることがあるソートミドルアーキテクチャにおいて、スクリーンは複数のタイルに分割される。これらのタイルは、スクリーン全体を合わせてカバーする互いに重なり合わない矩形の領域である。第1の段階において、レンダリングされる複数の三角形等の全てのプリミティブは、ソートされて複数のタイルとなり、従ってプリミティブに対する参照は、プリミティブが重なり合う全てのタイルについて1タイル毎にプリミティブのリストに格納される。全てのソートが実行されると、各タイルは、シリアルまたは並列にラスタライズされ得る。
この技術は、多くの場合に、ある画像と次の画像とで、画像の大部分が同一であるという事実を活用する。この効果は多くの場合、フレーム対フレームコヒーレンシと称される。フレーム対フレームコヒーレンシは、ここでは電力および性能の両方の観点からグラフィックスプロセッサをより効率的なものにするべく活用される。
一実施形態において、ハッシュのようなコンパクト表現は、1タイル毎のプリミティブのリストが作成されるときに、1タイル毎で蓄積される。コンパクト表現は、全てのプリミティブ、ユニフォーム、テクスチャ、シェーダ、ブレンドモード等を含む全てのジオメトリ、入力データ、および関連する状態に基づき得る。先行フレームからの複数のコンパクト表現は、現在のフレームをレンダリングするときに、メモリ内に格納される。次に、1タイル毎のラスタライズが開始する直前に、現在のフレームに対する現在のタイルのコンパクト表現が先行フレームに対する同一のタイルのコンパクト表現と同一であるか否かの判断が行われる。複数のコンパクト表現が同一である場合、レンダリングされるコンテンツも同一であると仮定され、結果としてレンダリングは必要とされない。その代わりに、タイルにおける全てのピクセルの色は、先行フレームから再利用される。コンパクト表現が同一でない場合、ラスタライズ、デプス試験、ピクセルシェード、およびブレンドが通常のように行われる。
この技術は、カラーバッファに加えて全てのレンダリングのターゲット、ならびにデプスおよびステンシルにも用いられ得る。しかし、スクリーン上に表示されるカラーバッファのような現在のレンダリングの複数のターゲットについては、いくつかの更なる最適化が可能である。例えば、組み込みディスプレイポート(eDP)仕様バージョン1.4/1.5(およびそれ以上)を用いる場合、これらの技術は、パネルソフト更新(PSR)モードにあるときに部分的フレーム更新と共に用いられ得る。基本的に、アルゴリズムは、現在のフレームに対する特定のタイルが先行フレームに対する対応するタイルと同一であることを検出し、従ってラスタライズおよび全ての後続する段階は必要とされない。従って、データがディスプレイに転送されるときに、先行フレームにおけるものと同一であるこれらのタイルについては、データの送信は回避され得る。最終的に、フレームが終了するときに、現在のフレームに対する複数のコンパクト表現は、先行フレームのコンパクト表現テーブルに移動されなければならず、将来の使用のためにクリアされる。あるいは、現在のフレームおよび先行フレームに対するポインタがスワップされ得るのみである。メモリバーストを回避するために、現在のフレームを識別するべく1ビットを追加するレイジーな置換が考えられ得る。
選択されるコンパクト表現は、以下の基準のうちの1または複数に準拠し得る。(1)1タイル毎に全ハッシュ値を蓄積するべく、複数のブロックをシーケンシャルに処理することを可能にする。(2)可視のアーティファクトを生成する可能性があるので、偽陽性を最小化する。(3)ハッシュテーブルのストレージオーバヘッドを低減するべく、適度のサイズの複数のハッシュ値を生成する。
1タイル毎の出力ハッシュ値が比較の目的で生成されるという事実を考慮すると、いくつかの実施形態において、任意の簡易な巡回冗長検査またはチェックサム機能で十分である場合がある。ハッシュ衝突の確率がより小さいことが所望である場合、より重い計算要求を費やして、MD5等のMerkle−Damguard構造を用いる暗号学的ハッシュ関数が更に用いられ得る。
更に、ハッシュを格納することに代えて、フレームの最後においてタイルを完全にカバーする描画呼出しのために、識別子が格納されるのみである場合がある。全てのユニフォーム、テクスチャ、およびシェーダ等が後続するフレームまで同一のままであるので当該描画呼出しが静的であり、同一の描画呼出しが再びタイルを完全にカバーすることが発見された場合、当該タイルの全ての処理は回避されて、先行フレームからの複数のコンテンツが再利用され得る。これが機能するには、例えば、タイルと完全に重なり合う単一の三角形が存在するか否かが試験され、タイルのプリミティブのリストにおける全ての他の三角形が当該三角形により塞がれているか否かが試験され得る。別の態様は、現在のフレームおよび後続するフレームにおいて、タイルが描画呼出しにおける複数の三角形のサブセットにより完全にカバーされるか否かを判断することであり、同一の描画呼出しが全く同一であり、当該タイルにおける全ての他のジオメトリが塞がれている場合、当該タイルについて何も描画される必要はない。
更に別の実施形態において、ブルームフィルタがハッシュの代わりに用いられ得る。その実装のためには、少なくとも2つのブルームフィルタが用いられ得るが、2つのNのより小さいブルームフィルタも考えられ得る。複数のブルームフィルタの各ペアは、異なる種類の情報に対する複数の要素を備える。例えば、1つのペアはジオメトリ用であってもよく、別のペアは複数のテクスチャアドレス用であってもよく、第3のペアは、複数のシェーダ用であってもよい。これらのペアのうち、あるものは先行フレームに対する複数の要素を含み、第2のものは、現在のフレームに対する対応する複数の要素を含む。
一実施形態において、ブルームフィルタアルゴリズムは、複数のハッシュを用いるものと同様に機能する。トライアングルリストが作成される場合、いくつかのハッシュ関数が比較する情報に適用される。両方のブルームフィルタを指標付けするべく、これらのハッシュ関数の結果が用いられる。現在のフレームに関するものについては、指標付けされる全てのビットが設定される。他方、先行フレームのブルームフィルタについては、指標付けされた複数のビットが読み取られ、チェックは、それら全てが1か否かを判断する。1である場合、レンダリングされるコンテンツは同一であると仮定され、複数の色が先行フレームから再利用される。1でない場合、シーケンスは、正常に進行する。フレームが終了すると、ブルームフィルタの扱いがスワップされる。現在のフレームを指し示すものは、先行フレームとなり、以前の先行フレームはクリアされる。
ハッシュと比較して、ブルームフィルタを用いる1つの利点は、ブルームフィルタが通常、全ての情報を保持するのにストレージスペースをあまり必要としないことであるが、ブルームフィルタは、複数のハッシュ関数に追加のロジックを必要とする場合がある。従来、約0.5パーセントの偽陽性率を得るのに必要とされるビット数は、ブルームフィルタにおける1要素当たり11〜12ビットの範囲であり、この偽陽性率に対するハッシュ関数の最適な数は、6〜8の関数の範囲である。
図1を参照すると、タイリングエンジン10は、ラスタパイプライン12に結合され得る。タイリングエンジン10は、ハッシュまたはブルームフィルタ計算ユニット13においてジオメトリ、状態情報、シェーダ情報、および複数のテクスチャアドレスを受信する。任意の状態情報が、任意の状態情報とパイプライン結果を組み合わせるタイルリストビルダ14に提供される。この組み合わされたデータは、タイルキャッシュ22に格納される。
先行フレームハッシュまたはブルームフィルタストレージ16は、フレーム変更時に現在のフレームハッシュ/ブルームフィルタストレージ18へとダンプされる。タイルフェッチャ20は、ラスタライズパイプライン12から複数のタイルをフェッチし、それらをタイルキャッシュ22に提供する。タイルキャッシュ22は、データを統合キャッシュ24に転送する。
ラスタパイプライン12は、タイルフェッチャ20およびデプス試験ユニット28に結合されたラスタライザ26を含む。複数のシェーダは、デプス試験ユニット28に結合され得る。複数のシェーダ30は、カラーバッファ32、テクスチャサンプラ34、およびデプスバッファ36に結合され、これらは同様に統合キャッシュ24に結合される。
図2に示されるシーケンス40は、ソフトウェアファームウェアおよび/またはハードウェアに実装され得る。ソフトウェアおよびファームウェアの実施形態において、シーケンス40は、磁気、光、または半導体ストレージ等の1または複数の非一時的コンピュータ可読媒体に格納される複数のコンピュータ実行命令により実装され得る。
シーケンスは、タイルリストビルダ14において開始する。タイルリストビルダ14は、ブロック42に示されるように、タイルビニングを実行し、また、入力データについて影響を受けた複数のタイル識別子を判断する。次に、ブロック44において、ハッシュまたはブルームフィルタは、入力データについて計算される。ブロック46に示されるように、影響を受けた全てのタイルについて、現在のハッシュまたはブルームフィルタが読み取られ、計算されたハッシュまたはフィルタが蓄積される。次に、ダイアモンド48におけるチェックは、タイルビニング処理が終了したか否かを判断する。終了していない場合、フローは、ブロック42に戻って反復する。終了した場合、フローは、タイルフェッチャ20に進む。
ブロック50において、フェッチする次のタイル識別子が取得される。ブロック52において、当該タイルについて、現在のハッシュまたはフィルタが取得され、先行フレームからの複数の現在のハッシュまたはフィルタが取得される。54におけるチェックは、現在および先行のハッシュまたはフィルタが一致するか否かを判断する。一致する場合、56においてタイルフェッチはスキップされ、現在のタイルについてラスタライズが回避され得る。一致しない場合、58において、タイルフェッチをして、データをラスタパイプラインに向ける処理を進める。次に、60において、フェッチするその他のタイル識別子が存在するか否かが判断される。存在する場合、フローはブロック50に戻って反復する。そうでなければ62において、現在の複数のハッシュまたはフィルタ値は、先行ハッシュまたはフィルタ値となる。
図3は、システム700の一実施形態を図示する。複数の実施形態において、システム700はメディアシステムであってもよいが、システム700は、この文脈に限定されるものではない。例えば、システム700は、パーソナルコンピュータ(PC)、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、携帯情報端末(PDA)、携帯電話、携帯電話/PDAの組み合わせ、テレビ、スマートデバイス(例えば、スマートフォン、スマートタブレットまたはスマートテレビ)、モバイルインターネットデバイス(MID)、メッセージングデバイス、データ通信デバイス等に組み込まれてもよい。
複数の実施形態において、システム700は、ディスプレイ720に結合されたプラットフォーム702を備える。プラットフォーム702は、コンテンツサービスデバイス730もしくはコンテンツ配信デバイス740、または他の類似のコンテンツソース等のコンテンツデバイスからコンテンツを受信し得る。1または複数のナビゲーション機能を備えるナビゲーションコントローラ750は、例えば、プラットフォーム702および/またはディスプレイ720とインタラクトするように用いられてもよい。これらのコンポーネントの各々は、以下により詳細に説明される。
複数の実施形態において、プラットフォーム702は、チップセット705、プロセッサ710、メモリ712、ストレージ714、グラフィックスサブシステム715、複数のアプリケーション716、および/または無線機718の任意の組み合わせを備え得る。チップセット705は、プロセッサ710、メモリ712、ストレージ714、グラフィックスサブシステム715、複数のアプリケーション716、および/または無線機718の間の相互通信を提供し得る。例えば、チップセット705は、ストレージ714との相互通信を提供することができるストレージアダプタ(図示せず)を含み得る。
プロセッサ710は、複合命令セットコンピュータ(CISC)もしくは縮小命令セットコンピュータ(RISC)プロセッサ、x86命令セットに互換性のあるプロセッサ、マルチコア、またはその他のマイクロプロセッサもしくは中央処理装置(CPU)として実装され得る。複数の実施形態において、プロセッサ710は、デュアルコアプロセッサ、デュアルコアモバイルプロセッサ等を備えてもよい。プロセッサは、メモリ712と共に、図2のシーケンスを実装し得る。
メモリ712は、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックRAM(SRAM)等の揮発性メモリデバイスとして実装され得るが、これらに限定されるものではない。
ストレージ714は、磁気ディスクドライブ、光ディスクドライブ、テープドライブ、内部ストレージデバイス、装着ストレージデバイス、フラッシュメモリ、バッテリバックアップSDRAM(シンクロナスDRAM)、および/またはネットワークアクセス可能なストレージデバイス等の不揮発性ストレージデバイスとして実装され得るが、これらに限定されるものではない。複数の実施形態において、ストレージ714は、例えば、複数のハードドライブが含まれる場合に貴重なデジタル媒体に対する記憶性能を高めた保護を増大させる技術を備え得る。
グラフィックスサブシステム715は、表示のために静止画像または動画のような複数の画像の処理を実行し得る。グラフィックスサブシステム715は、例えば、グラフィックス処理ユニット(GPU)またはビジュアルプロセッシングユニット(VPU)であってもよい。アナログまたはデジタルインターフェースは、グラフィックスサブシステム715およびディスプレイ720を通信可能に結合するように用いられてもよい。例えば、インターフェースは、高細精度マルチメディアインターフェース、DisplayPort、無線HDMI(登録商標)、および/または無線HDに準拠する技術のいずれかであってもよい。グラフィックスサブシステム715は、プロセッサ710またはチップセット705に集積され得る。グラフィックスサブシステム715は、チップセット705に通信可能に結合されたスタンドアロンカードであり得る。
本明細書に説明されるグラフィックスおよび/または動画処理技術は、様々なハードウェアアーキテクチャで実装され得る。例えば、グラフィックスおよび/または動画機能は、チップセット内に集積され得る。あるいは、別個のグラフィックスおよび/またはビデオプロセッサが用いられてもよい。更に別の実施形態として、グラフィックスおよび/または複数のビデオ機能は、マルチコアプロセッサを含む汎用プロセッサにより実装され得る。更なる実施形態において、これらの機能は、家庭用電子デバイスに実装され得る。
無線機718は、様々な好適の無線通信技術を用いて複数の信号を送受信することができる1または複数の無線機を含み得る。そのような複数の技術は、1または複数の無線ネットワークにわたる複数の通信を含み得る。例示的な複数の無線ネットワークとしては、無線ローカルエリアネットワーク(WLAN)、無線パーソナルエリアネットワーク(WPAN)、無線メトロポリタンエリアネットワーク(WMAN)、セルラーネットワーク、および衛星ネットワークが挙げられる(しかし、これらに限定されるものではない)。そのような複数のネットワークにわたって通信する場合に、無線機718は、任意のバージョンの1または複数の適用可能規格に準拠して動作し得る。
複数の実施形態において、ディスプレイ720は、任意のテレビタイプのモニタまたはディスプレイを備え得る。ディスプレイ720は、例えば、コンピュータディスプレイスクリーン、タッチスクリーンディスプレイ、ビデオモニタ、テレビ様式のデバイス、および/またはテレビを備え得る。ディスプレイ720は、デジタルおよび/またはアナログであってもよい。複数の実施形態において、ディスプレイ720は、ホログラフィックディスプレイであってもよい。また、ディスプレイ720は、視覚投影を受信し得る透明面であってもよい。そのような複数の投影は、様々な形態の情報、画像、および/またはオブジェクトを搬送し得る。例えば、そのような複数の投影は、モバイル拡張実現(MAR)アプリケーションのための視覚オーバーレイであってもよい。1または複数のソフトウェアアプリケーション716の制御下で、プラットフォーム702は、ユーザインターフェース722をディスプレイ720上に表示し得る。
複数の実施形態において、コンテンツサービスデバイス730は、任意の国家的、国際的、および/または独立系サービスによりホストされ、従って例えばインターネットを介してプラットフォーム702にアクセス可能であり得る。コンテンツサービスデバイス730は、プラットフォーム702および/またはディスプレイ720に結合され得る。プラットフォーム702および/またはコンテンツサービスデバイス730は、ネットワーク760に、およびネットワーク760からメディア情報を通信する(例えば送信し、および/または受信する)べくネットワーク760に結合され得る。コンテンツ配信デバイス740は、プラットフォーム702および/またはディスプレイ720にも結合され得る。
複数の実施形態において、コンテンツサービスデバイス730は、ケーブルテレビボックス、パーソナルコンピュータ、ネットワーク、電話、インターネットが可能なデバイス、もしくはデジタル情報および/またはコンテンツを提供することができる電気機器、およびネットワーク760を介し、または直接に複数のコンテンツプロバイダと、プラットフォーム702と、ディスプレイ720との間で一方向または双方向にコンテンツを通信することができるその他の類似のデバイスを備え得る。コンテンツは、ネットワーク760を介してシステム700における複数のコンポーネントのうちのいずれか1つおよびコンテンツプロバイダに、およびこれらから一方向および/または双方向に通信され得ることが理解されよう。コンテンツの複数の例としては、例えば、動画、音楽、医療およびゲーム情報等を含む任意のメディア情報が挙げられ得る。
コンテンツサービスデバイス730は、メディア情報、デジタル情報、および/または他のコンテンツを含むケーブルテレビ番組等のコンテンツを受信する。コンテンツプロバイダの複数の例としては、任意のケーブルもしくは衛星テレビ、またはラジオもしくはインターネットコンテンツプロバイダが挙げられ得る。提供される複数の例は、適用可能な実施形態を限定することを意図しない。
複数の実施形態において、プラットフォーム702は、1または複数のナビゲーション機能を有するナビゲーションコントローラ750から複数の制御信号を受信し得る。コントローラ750の複数のナビゲーション機能は、例えば、ユーザインターフェース722とインタラクトするように用いられ得る。複数の実施形態において、ナビゲーションコントローラ750は、ユーザが空間(例えば、連続した多次元の)データをコンピュータに入力することを可能にする、コンピュータハードウェアコンポーネント(具体的にはヒューマンインターフェースデバイス)であり得るポインティングデバイスであってもよい。グラフィカルユーザインターフェース(GUI)等の多くのシステム、ならびに複数のテレビおよびモニタは、ユーザが物理的なジェスチャを用いてコンピュータまたはテレビを制御し、これらにデータを提供することを可能にする。
コントローラ750におけるナビゲーション機能の動きは、ディスプレイ上に表示されるポインタ、カーソル、フォーカスリング、または他の複数の視覚インジケータの動きにより、ディスプレイ(例えば、ディスプレイ720)上に反映され得る。例えば、ソフトウェアアプリケーション716の制御下で、ナビゲーションコントローラ750上に位置する複数のナビゲーション機能は、例えばユーザインターフェース722上に表示される複数の仮想ナビゲーション機能にマッピングされ得る。複数の実施形態において、コントローラ750は、別個のコンポーネントではなく、プラットフォーム702および/またはディスプレイ720に統合されてもよい。しかし、実施形態は、本明細書に示され、または説明される要素または文脈に限定されない。
複数の実施形態において、複数のドライバ(図示せず)は、例えば、有効にされると、初期ブートアップ後にユーザがボタンに触れることによりテレビ等のプラットフォーム702を即座にオンおよびオフにすることを可能にする技術を備え得る。プラットフォームが「オフ」にされると、プログラムロジックは、プラットフォーム702がコンテンツをメディアアダプタもしくは他のコンテンツサービスデバイス730、またはコンテンツ配信デバイス740にストリーミングすることを可能にし得る。更に、チップセット705は、例えば、5.1サラウンドサウンドオーディオおよび/または高細精度7.1サラウンドサウンドオーディオに対するハードウェアおよび/またはソフトウェアのサポートを備え得る。複数のドライバは、複数の統合グラフィックスプラットフォームためのグラフィックスドライバを含み得る。複数の実施形態において、複数のグラフィックスドライバは、周辺構成要素相互接続(PCI)エクスプレスグラフィックスカードを備え得る。
様々な実施形態において、システム700において示される複数のコンポーネントのうちの任意の1または複数が統合され得る。例えば、プラットフォーム702およびコンテンツサービスデバイス730が統合されてもよく、またはプラットフォーム702およびコンテンツ配信デバイス740が統合されてもよく、または例えば、プラットフォーム702、コンテンツサービスデバイス730、およびコンテンツ配信デバイス740が統合されてもよい。様々な実施形態において、プラットフォーム702およびディスプレイ720は、統合されたユニットであってもよい。例えば、ディスプレイ720およびコンテンツサービスデバイス730が統合されてもよく、またはディスプレイ720およびコンテンツ配信デバイス740が統合されてもよい。これらの例は、範囲の限定であることを意図しない。
様々な実施形態において、システム700は、無線システム、有線システム、または両方の組み合わせとして実装され得る。無線システムとして実装される場合、システム700は、1または複数のアンテナ、トランスミッタ、レシーバ、トランシーバ、増幅器、フィルタ、制御ロジック等のような無線共有媒体を介して通信するのに好適な複数のコンポーネントおよびインターフェースを含み得る。無線共有媒体の例としては、RFスペクトル等のような無線スペクトルの一部が挙げられ得る。有線システムとして実装される場合、システム700は、入力/出力(I/O)アダプタ、対応する有線通信媒体とI/Oアダプタを接続する物理コネクタ、ネットワークインターフェースカード(NIC)、ディスクコントローラ、ビデオコントローラ、オーディオコントローラ等のような有線通信媒体を介して通信するのに好適な複数のコンポーネントおよびインターフェースを含み得る。有線通信媒体の複数の例としては、ワイヤ、ケーブル、金属リード線、プリント回路基板(PCB)、バックプレーン、スイッチファブリック、半導体材料、ツイストペアワイヤ、同軸ケーブル、光ファイバ等が挙げられ得る。
プラットフォーム702は、情報を通信するべく1または複数の論理または物理チャネルを確立し得る。情報は、メディア情報および制御情報を含み得る。メディア情報は、ユーザ向けのコンテンツを表す任意のデータを指し得る。コンテンツの複数の例としては、例えば、音声会話、ビデオ会議、ストリーミング動画、電子メール(「eメール」)メッセージ、ボイスメールメッセージ、英数字記号、グラフィックス、画像、ビデオ、テキスト等からのデータが挙げられ得る。音声会話からのデータは、例えば、発言情報、無音期間、バックグラウンドノイズ、コンフォートノイズ、トーン等であり得る。制御情報は、自動システム向けの複数のコマンド、命令、または制御ワードを表す任意のデータを指し得る。例えば、制御情報は、システムを通じてメディア情報をルーティングし、または予め定められたようにメディア情報を処理するようノードに指示するべく用いられ得る。しかし、実施形態は、図3に示され、または説明される要素または文脈に限定されない。
上記のように、システム700は、異なる物理的スタイルまたはフォームファクタで実施され得る。図4は、システム700が実施され得る小さいフォームファクタデバイス800の複数の実施形態を図示する。例えば複数の実施形態において、デバイス800は、無線機能を有するモバイルコンピューティングデバイスとして実装され得る。例えば、モバイルコンピューティングデバイスは、処理システム、および1または複数のバッテリ等、モバイル電源または電力供給を有する任意のデバイスを指し得る。
上記のように、モバイルコンピューティングデバイスの複数の例としては、パーソナルコンピュータ(PC)、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、携帯情報端末(PDA)、携帯電話、携帯電話/PDAの組み合わせ、テレビ、スマートデバイス(例えば、スマートフォン、スマートタブレットまたはスマートテレビ)、モバイルインターネットデバイス(MID)、メッセージングデバイス、データ通信デバイス等が挙げられ得る。
モバイルコンピューティングデバイスの複数の例としては、リストコンピュータ、フィンガーコンピュータ、リングコンピュータ、眼鏡コンピュータ、ベルトクリップコンピュータ、アームバンドコンピュータ、シューズコンピュータ(shoe computer)、衣類コンピュータ(clothing computer)、および他のウェアラブルコンピュータ等、人により着用されるように構成された複数のコンピュータも挙げられ得る。例えば複数の実施形態において、モバイルコンピューティングデバイスは、複数のコンピュータアプリケーション、ならびに音声通信および/またはデータ通信を実行することができるスマートフォンとして実装され得る。いくつかの実施形態は、例として、スマートフォンとして実装されるモバイルコンピューティングデバイスと共に説明され得るが、他の複数の無線モバイルコンピューティングデバイスを同様に用いる他の複数の実施形態が実装され得ることが理解され得る。これらの実施形態は、この文脈において限定されない。
以下の付記および/または例は、更なる実施形態に関する。 例示的な一実施形態は、トライアングルリストが作成される場合に、タイルに対するジオメトリ、入力データ、および状態の縮小表現を蓄積する段階と、1タイル毎のラスタライズの前に、現在のフレームにおける現在のタイルに対する表現が先行フレームおよび対応するタイルに対する表現と同一であるか否かを判断する段階と、先行フレームおよび現在のフレームにおけるタイルに対する複数の表現が同一である場合、現在のタイルをレンダリングするときに、前のタイルの複数のピクセルを現在のタイルの複数のピクセルとして再利用する段階とを備える、方法であり得る。方法は、縮小表現を生成するべくハッシュ関数を用いる段階を備え得る。方法は、縮小表現を生成するべくブルームフィルタを用いる段階を備え得る。方法は、現在のタイルに1つ、および先行タイルに1つの、2つのブルームフィルタを用いる段階を備え得る。方法は、ジオメトリ、複数のテクスチャアドレス、および複数のシェーダの各々に対して複数のブルームフィルタのうちの1つのペアを用いる段階を備え得る。方法は、ソートミドルアーキテクチャにおいて蓄積する段階を備え得る。方法は、再利用する段階が、複数の色値を再利用する段階を有することを含み得る。方法は、再利用する段階が、複数のデプスバッファまたはステンシルバッファを再利用する段階を有することを含み得る。方法は、現在のコンパクト表現を先行のコンパクト表現に変更する段階を備え得る。方法は、同一の描画呼出しが連続する複数のフレームにおける同一のタイルに用いられているか否かを判断して、複数の表現が同一であるか否かを判断する段階を備え得る。
別の例示的な実施形態は、トライアングルリストが作成される場合に、タイルに対するジオメトリ、入力データ、および状態の縮小表現を蓄積することと、1タイル毎のラスタライズの前に、現在のフレームにおける現在のタイルに対する表現が先行フレームおよび対応するタイルに対する表現と同一であるか否かを判断することと、先行フレームおよび現在のフレームにおけるタイルに対する複数の表現が同一である場合、現在のタイルをレンダリングするときに、前のタイルの複数のピクセルを現在のタイルの複数のピクセルとして再利用することとを含むシーケンスを実装する複数の命令を格納する、1または複数の非一時的コンピュータ可読媒体であり得る。媒体は、縮小表現を生成するハッシュ関数を用いることを含むシーケンスを備え得る。媒体は、縮小表現を生成するブルームフィルタを用いることを含むシーケンスを備え得る。媒体は、現在のタイルに1つ、および先行タイルに1つの、2つのブルームフィルタを用いることを含むシーケンスを備え得る。媒体は、ジオメトリ、複数のテクスチャアドレス、および複数のシェーダの各々に複数のブルームフィルタのうちの1つのペアを用いることを含むシーケンスを備え得る。媒体は、ソートミドルアーキテクチャにおいて蓄積することを含むシーケンスを備え得る。媒体は、再利用することが、複数の色値を再利用することを含むことを含み得る。媒体は、再利用することが、複数のデプスバッファまたは複数のステンシルバッファを再利用することを含むことを含み得る。媒体は、同一の描画呼出しが連続する複数のフレームにおける同一のタイルに用いられているか否かを判断して、複数の表現が同一であるか否かを判断することを含むシーケンスを備え得る。
別の例示的な実施形態は、トライアングルリストが作成される場合に、タイルに対するジオメトリ、入力データ、および状態の縮小表現を蓄積し、1タイル毎のラスタライズの前に、現在のフレームにおける現在のタイルに対する表現が先行フレームおよび対応するタイルに対する表現と同一であるか否かを判断し、先行フレームおよび現在のフレームにおけるタイルに対する複数の表現が同一である場合、現在のタイルをレンダリングするときに、前のタイルの複数のピクセルを現在のタイルの複数のピクセルとして再利用するプロセッサと、プロセッサに結合されたストレージとを備える、装置であり得る。装置は、縮小表現を生成するハッシュ関数を用いるプロセッサを備え得る。装置は、縮小表現を生成するブルームフィルタを備え得る。装置は、現在のタイルに1つ、および先行タイルに1つの、2つのブルームフィルタを備え得る。装置は、ジオメトリ、複数のテクスチャアドレス、および複数のシェーダの各々に対する複数のブルームフィルタのうちの1つのペアを備え得る。装置は、ソートミドルアーキテクチャにおいて蓄積するプロセッサを備え得る。装置は、複数のコンパクト表現が同一である場合、表示するためにデータを送信することを避けるプロセッサを備え得る。装置は、同一の描画呼出しが連続する複数のフレームにおける同一のタイルに用いられているか否かを判断して、複数のコンパクト表現が同一であるか否かを判断するプロセッサを備え得る。装置は、バッテリを備え得る。装置は、ファームウェア、およびファームウェアを更新するモジュールを備え得る。
本明細書において説明される複数のグラフィックス処理技術は、様々なハードウェアアーキテクチャにおいて実装され得る。例えば、グラフィックス機能は、チップセット内に統合され得る。あるいは、別個のグラフィックスプロセッサが用いられ得る。更に別の実施形態として、複数のグラフィックス機能は、マルチコアプロセッサを含む汎用プロセッサにより実装され得る。
本明細書を通して「一実施形態」または「実施形態」を参照する場合、実施形態に関連して説明される特定の機能、構造、または特性が、本開示に包含される少なくとも一実装に含まれることを意味する。従って、「一実施形態」または「実施形態において」という文言が現れても、必ずしも同一の実施形態を指すわけではない。更に、特定の機能、構造、または特性は、図示される特定の実施形態以外の他の好適な形式で設けられてもよく、またそのような全ての形態は、本願の特許請求の範囲に包含され得る。
限定された数の実施形態が説明されているが、当業者は、それらから多くの修正形態および改変形態を理解するであろう。添付の特許請求の範囲は、そのような全ての修正形態および改変形態を、本開示の真の主旨および範囲内に含まれるものとして包含することが意図されている。

Claims (25)

  1. トライアングルリストが作成される場合に、タイルに対するジオメトリ、入力データ、および状態の縮小表現を蓄積する段階と、
    1タイル毎のラスタライズの前に、現在のフレームにおける現在のタイルに対する前記縮小表現が先行フレームおよび対応するタイルに対する前記縮小表現と同一であるか否かを判断する段階と、
    前記先行フレームおよび前記現在のフレームにおけるタイルに対する複数の前記縮小表現が同一である場合、前記現在のタイルをレンダリングするときに、前のタイルの複数のピクセルを前記現在のタイルの複数のピクセルとして再利用する段階とを備える、方法。
  2. 前記縮小表現を生成するべくハッシュ関数を用いる段階を備える、請求項1に記載の方法。
  3. 前記縮小表現を生成するべくブルームフィルタを用いる段階を備える、請求項1に記載の方法。
  4. 前記現在のタイルに1つ、および先行タイルに1つの、2つのブルームフィルタを用いる段階を備える、請求項3に記載の方法。
  5. ジオメトリ、複数のテクスチャアドレス、および複数のシェーダの各々に対して複数のブルームフィルタのうちの1つのペアを用いる段階を備える、請求項4に記載の方法。
  6. ソートミドルアーキテクチャにおいて蓄積する段階を備える、請求項1に記載の方法。
  7. 再利用する段階は、複数の色値を再利用する段階を有する、請求項1に記載の方法。
  8. 再利用する段階は、複数のデプスバッファまたは複数のステンシルバッファを再利用する段階を有する、請求項1に記載の方法。
  9. 複数の縮小表現が同一である場合、表示するためにデータを送信することを避ける段階を備える、請求項1に記載の方法。
  10. 現在の縮小表現を先行の縮小表現に変更する段階を備える、請求項1に記載の方法。
  11. 同一の描画呼出しが連続する複数のフレームにおける同一のタイルに用いられているか否かを判断して、複数の縮小表現が同一であるか否かを判断する段階を備える、請求項1に記載の方法。
  12. トライアングルリストが作成される場合に、タイルに対するジオメトリ、入力データ、および状態の縮小表現を蓄積することと、
    1タイル毎のラスタライズの前に、現在のフレームにおける現在のタイルに対する前記縮小表現が先行フレームおよび対応するタイルに対する前記縮小表現と同一であるか否かを判断することと、
    前記先行フレームおよび前記現在のフレームにおけるタイルに対する複数の前記縮小表現が同一である場合、前記現在のタイルをレンダリングするときに、前のタイルの複数のピクセルを前記現在のタイルの複数のピクセルとして再利用することとを含むシーケンスを実装する複数の命令を格納する、1または複数の非一時的コンピュータ可読媒体。
  13. 前記シーケンスは、前記縮小表現を生成するハッシュ関数を用いることを含む、請求項12に記載の媒体。
  14. 前記シーケンスは、前記縮小表現を生成するブルームフィルタを用いることを含む、請求項12に記載の媒体。
  15. 前記シーケンスは、前記現在のタイルに1つ、および先行タイルに1つの、2つのブルームフィルタを用いることを含む、請求項14に記載の媒体。
  16. 前記シーケンスは、ジオメトリ、複数のテクスチャアドレス、および複数のシェーダの各々に複数のブルームフィルタのうちの1つのペアを用いることを含む、請求項15に記載の媒体。
  17. 前記シーケンスは、ソートミドルアーキテクチャにおいて蓄積することを含む、請求項12に記載の媒体。
  18. トライアングルリストが作成される場合に、タイルに対するジオメトリ、入力データ、および状態の縮小表現を蓄積し、1タイル毎のラスタライズの前に、現在のフレームにおける現在のタイルに対する前記縮小表現が先行フレームおよび対応するタイルに対する前記縮小表現と同一であるか否かを判断し、前記先行フレームおよび前記現在のフレームにおけるタイルに対する複数の前記縮小表現が同一である場合、前記現在のタイルをレンダリングするときに、前のタイルの複数のピクセルを前記現在のタイルの複数のピクセルとして再利用するプロセッサと、
    前記プロセッサに結合されたストレージとを備える、装置。
  19. 前記プロセッサは、前記縮小表現を生成するハッシュ関数を用いる、請求項18に記載の装置。
  20. 前記縮小表現を生成するブルームフィルタを備える、請求項18に記載の装置。
  21. 前記現在のタイルに1つ、および先行タイルに1つの、2つのブルームフィルタを備える、請求項20に記載の装置。
  22. ジオメトリ、複数のテクスチャアドレス、および複数のシェーダの各々に対する複数のブルームフィルタのうちの1つのペアを備える、請求項21に記載の装置。
  23. 前記プロセッサは、ソートミドルアーキテクチャにおいて蓄積する、請求項18に記載の装置。
  24. 前記プロセッサは、複数の縮小表現が同一である場合、表示するためにデータを送信することを避ける、請求項18に記載の装置。
  25. 前記プロセッサは、同一の描画呼出しが連続する複数のフレームにおける同一のタイルに用いられているか否かを判断して、複数の縮小表現が同一であるか否かを判断する、請求項18に記載の装置。
JP2016561851A 2014-05-14 2015-04-30 方法、コンピュータプログラム、装置およびコンピュータ可読記録媒体 Active JP6337322B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/277,239 2014-05-14
US14/277,239 US9940686B2 (en) 2014-05-14 2014-05-14 Exploiting frame to frame coherency in a sort-middle architecture
PCT/US2015/028422 WO2015175231A1 (en) 2014-05-14 2015-04-30 Exploiting frame to frame coherency in a sort-middle architecture

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2017150266A Division JP6504212B2 (ja) 2014-05-14 2017-08-02 装置、方法およびシステム

Publications (2)

Publication Number Publication Date
JP2017517799A true JP2017517799A (ja) 2017-06-29
JP6337322B2 JP6337322B2 (ja) 2018-06-06

Family

ID=54480444

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2016561851A Active JP6337322B2 (ja) 2014-05-14 2015-04-30 方法、コンピュータプログラム、装置およびコンピュータ可読記録媒体
JP2017150266A Active JP6504212B2 (ja) 2014-05-14 2017-08-02 装置、方法およびシステム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2017150266A Active JP6504212B2 (ja) 2014-05-14 2017-08-02 装置、方法およびシステム

Country Status (9)

Country Link
US (3) US9940686B2 (ja)
EP (1) EP3143594B1 (ja)
JP (2) JP6337322B2 (ja)
KR (3) KR102154456B1 (ja)
CN (3) CN106233337B (ja)
RU (2) RU2677584C1 (ja)
SG (3) SG11201608884PA (ja)
TW (3) TWI596571B (ja)
WO (1) WO2015175231A1 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102116976B1 (ko) 2013-09-04 2020-05-29 삼성전자 주식회사 렌더링 방법 및 장치
KR102122454B1 (ko) * 2013-10-02 2020-06-12 삼성전자주식회사 이전 타일의 이미지를 이용하여 현재 프레임을 렌더링하는 방법 및 장치
US9940686B2 (en) 2014-05-14 2018-04-10 Intel Corporation Exploiting frame to frame coherency in a sort-middle architecture
GB2524121B (en) * 2014-06-17 2016-03-02 Imagination Tech Ltd Assigning primitives to tiles in a graphics processing system
US9799091B2 (en) * 2014-11-20 2017-10-24 Intel Corporation Apparatus and method for efficient frame-to-frame coherency exploitation for sort-last architectures
GB2532495B (en) * 2014-11-21 2018-05-02 Advanced Risc Mach Ltd Graphics processing systems
GB201602117D0 (en) 2016-02-05 2016-03-23 Bae Systems Plc Method and apparatus for generating an image
GB201602120D0 (en) * 2016-02-05 2016-03-23 Bae Systems Plc Method and apparatus for generating an image
US10456672B2 (en) 2016-05-19 2019-10-29 Google Llc Methods and systems for facilitating participation in a game session
US10373286B2 (en) * 2016-08-03 2019-08-06 Samsung Electronics Co., Ltd. Method and apparatus for performing tile-based rendering
KR20190104394A (ko) * 2017-01-24 2019-09-09 가부시키가이샤 한도오따이 에네루기 켄큐쇼 표시 장치 및 전자 기기
EP3600581B1 (en) 2017-10-10 2024-02-21 Google LLC Distributed sample-based game profiling with game metadata and metrics and gaming api platform supporting third-party content
KR102407691B1 (ko) 2018-03-22 2022-06-10 구글 엘엘씨 온라인 인터랙티브 게임 세션들에 대한 콘텐츠를 렌더링 및 인코딩하기 위한 방법들 및 시스템들
WO2019194953A1 (en) 2018-04-02 2019-10-10 Google Llc Methods, devices, and systems for interactive cloud gaming
US11077364B2 (en) 2018-04-02 2021-08-03 Google Llc Resolution-based scaling of real-time interactive graphics
KR102614649B1 (ko) * 2018-04-10 2023-12-14 구글 엘엘씨 게이밍 렌더링에서의 메모리 관리
US11662051B2 (en) 2018-11-16 2023-05-30 Google Llc Shadow tracking of real-time interactive simulations for complex system analysis
KR20200073697A (ko) 2018-12-14 2020-06-24 삼성전자주식회사 경로를 포함하는 객체를 렌더링하는 장치, 이를 포함하는 컴퓨팅 장치 및 이의 렌더링 방법
GB2580179B (en) * 2018-12-21 2021-08-18 Imagination Tech Ltd Tile-based scheduling
US11016774B1 (en) * 2019-11-26 2021-05-25 Arm Limited Issuing execution threads in a data processor
CN111796709B (zh) * 2020-06-02 2023-05-26 南京信息工程大学 一种在触摸屏上再现图像纹理特征的方法
US20220051467A1 (en) * 2020-08-17 2022-02-17 Intel Corpoation Apparatus and method for efficient graphics processing including ray tracing
US11416960B2 (en) 2020-11-06 2022-08-16 Samsung Electronics Co., Ltd. Shader accessible configurable binning subsystem
US20220319090A1 (en) * 2021-03-31 2022-10-06 Arm Limited System, devices and/or processes for predictive graphics processing
EP4254339A1 (en) * 2022-03-31 2023-10-04 Imagination Technologies Limited Reducing redundant rendering in a graphics system
US11615578B1 (en) * 2022-06-09 2023-03-28 Illuscio, Inc. Systems and methods for efficient rendering and processing of point clouds using textures

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005514711A (ja) * 2001-12-31 2005-05-19 インテル・コーポレーション ゾーン・レンダリングのための効率的なグラフィックス状態管理
US20060146056A1 (en) * 2004-12-30 2006-07-06 Intel Corporation Method and apparatus for controlling display refresh
JP2009181582A (ja) * 2008-01-31 2009-08-13 Arm Norway As コンピュータグラフィックスを処理する方法および装置
WO2010143573A1 (ja) * 2009-06-10 2010-12-16 公立大学法人大阪府立大学 物体認識用画像データベースの作成方法、作成装置および作成処理プログラム
US20110199377A1 (en) * 2010-02-12 2011-08-18 Samsung Electronics Co., Ltd. Method, apparatus and computer-readable medium rendering three-dimensional (3d) graphics
US8108931B1 (en) * 2008-03-31 2012-01-31 Symantec Corporation Method and apparatus for identifying invariants to detect software tampering
US20130187947A1 (en) * 2012-01-20 2013-07-25 Rasmus Barringer Graphics Tiling Architecture With Bounding Volume Hierarchies

Family Cites Families (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1014602A (en) 1961-05-15 1965-12-31 Ass Elect Ind Improvements relating to apparatus for converting pulse code signals into analogue form
WO1999023612A1 (en) * 1997-10-31 1999-05-14 Hewlett-Packard Company Method and apparatus for rapidly rendering an image in response to three-dimensional graphics data in a data rate limited environment
EP1670259A3 (en) * 2002-01-23 2010-03-03 Nokia Corporation Grouping of image frames in video coding
AU2003268575B2 (en) * 2002-12-16 2006-02-02 Canon Kabushiki Kaisha Tiling a Compressed Image
US7268779B2 (en) 2002-12-24 2007-09-11 Intel Corporation Z-buffering techniques for graphics rendering
US7379019B2 (en) 2003-01-31 2008-05-27 Andrew Corporation Method for angle of arrival determination on frequency hopping air interfaces
US7586492B2 (en) * 2004-12-20 2009-09-08 Nvidia Corporation Real-time display post-processing using programmable hardware
US20080002894A1 (en) * 2006-06-29 2008-01-03 Winbond Electronics Corporation Signature-based video redirection
US7804499B1 (en) * 2006-08-28 2010-09-28 Nvidia Corporation Variable performance rasterization with constant effort
US7702683B1 (en) * 2006-09-18 2010-04-20 Hewlett-Packard Development Company, L.P. Estimating similarity between two collections of information
US9965886B2 (en) * 2006-12-04 2018-05-08 Arm Norway As Method of and apparatus for processing graphics
MX2009006404A (es) * 2006-12-18 2009-06-23 Koninkl Philips Electronics Nv Compresion y descompresion de imagen.
ITMI20070038A1 (it) * 2007-01-12 2008-07-13 St Microelectronics Srl Dispositivo di renderizzazione per grafica a tre dimensioni con architettura di tipo sort-middle.
US8300699B2 (en) * 2007-05-31 2012-10-30 Qualcomm Incorporated System, method, and computer-readable medium for reducing required throughput in an ultra-wideband system
US7743013B2 (en) * 2007-06-11 2010-06-22 Microsoft Corporation Data partitioning via bucketing bloom filters
US20090046098A1 (en) * 2007-08-14 2009-02-19 Stmicroelectronics S.R.L. Primitive binning method for tile-based rendering
US8908763B2 (en) * 2008-06-25 2014-12-09 Qualcomm Incorporated Fragmented reference in temporal compression for video coding
US20100057618A1 (en) 2008-08-27 2010-03-04 Sean Andrew Spicer System, method, and software to manage financial securities via a 3-dimensional landscape
WO2010069364A1 (en) 2008-12-16 2010-06-24 Telefonaktiebolaget Lm Ericsson (Publ) String matching method and apparatus
US9672646B2 (en) * 2009-08-28 2017-06-06 Adobe Systems Incorporated System and method for image editing using visual rewind operation
US8134934B2 (en) * 2009-09-21 2012-03-13 Alcatel Lucent Tracking network-data flows
US9406155B2 (en) 2009-09-25 2016-08-02 Arm Limited Graphics processing systems
US9349156B2 (en) 2009-09-25 2016-05-24 Arm Limited Adaptive frame buffer compression
US8988443B2 (en) 2009-09-25 2015-03-24 Arm Limited Methods of and apparatus for controlling the reading of arrays of data from memory
GB0916924D0 (en) * 2009-09-25 2009-11-11 Advanced Risc Mach Ltd Graphics processing systems
JP5835879B2 (ja) 2009-09-25 2015-12-24 アーム・リミテッド メモリからのデータの配列の読み込みを制御する方法および装置
KR101609266B1 (ko) * 2009-10-20 2016-04-21 삼성전자주식회사 타일 기반의 랜더링 장치 및 방법
US8619085B2 (en) * 2010-03-08 2013-12-31 Broadcom Corporation Method and system for compressing tile lists used for 3D rendering
US8711163B2 (en) 2011-01-06 2014-04-29 International Business Machines Corporation Reuse of static image data from prior image frames to reduce rasterization requirements
US20120176386A1 (en) * 2011-01-10 2012-07-12 Hutchins Edward A Reducing recurrent computation cost in a data processing pipeline
GB201105716D0 (en) * 2011-04-04 2011-05-18 Advanced Risc Mach Ltd Method of and apparatus for displaying windows on a display
US9411733B2 (en) 2011-09-09 2016-08-09 University Of Rochester Sharing pattern-based directory coherence for multicore scalability (“SPACE”)
US10089774B2 (en) 2011-11-16 2018-10-02 Qualcomm Incorporated Tessellation in tile-based rendering
US9117302B2 (en) * 2011-11-30 2015-08-25 Qualcomm Incorporated Switching between direct rendering and binning in graphics processing using an overdraw tracker
US20130271465A1 (en) 2011-12-30 2013-10-17 Franz P. Clarberg Sort-Based Tiled Deferred Shading Architecture for Decoupled Sampling
CN107403461B (zh) * 2012-01-16 2020-12-22 英特尔公司 使用随机光栅化生成随机采样分布的采样设备和方法
KR101861772B1 (ko) 2012-02-07 2018-05-28 삼성전자주식회사 시스템온칩, 이의 동작 방법, 및 상기 시스템온칩을 포함하는 모바일 장치
US9672584B2 (en) * 2012-09-06 2017-06-06 Imagination Technologies Limited Systems and methods of partial frame buffer updating
US9317948B2 (en) * 2012-11-16 2016-04-19 Arm Limited Method of and apparatus for processing graphics
US9043668B2 (en) 2013-02-08 2015-05-26 Seagate Technology Llc Using ECC data for write deduplication processing
KR102116708B1 (ko) * 2013-05-24 2020-05-29 삼성전자 주식회사 그래픽스 프로세싱 유닛
US9189881B2 (en) * 2013-05-30 2015-11-17 Arm Limited Graphics processing
US9640148B2 (en) * 2013-06-03 2017-05-02 Arm Limited Method of and apparatus for controlling frame buffer operations
KR102122454B1 (ko) * 2013-10-02 2020-06-12 삼성전자주식회사 이전 타일의 이미지를 이용하여 현재 프레임을 렌더링하는 방법 및 장치
US9659393B2 (en) * 2013-10-07 2017-05-23 Intel Corporation Selective rasterization
US9305326B2 (en) * 2013-12-26 2016-04-05 Industrial Technology Research Institute Apparatus and method for tile elimination
US9940686B2 (en) 2014-05-14 2018-04-10 Intel Corporation Exploiting frame to frame coherency in a sort-middle architecture

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005514711A (ja) * 2001-12-31 2005-05-19 インテル・コーポレーション ゾーン・レンダリングのための効率的なグラフィックス状態管理
US20060146056A1 (en) * 2004-12-30 2006-07-06 Intel Corporation Method and apparatus for controlling display refresh
JP2009181582A (ja) * 2008-01-31 2009-08-13 Arm Norway As コンピュータグラフィックスを処理する方法および装置
US8108931B1 (en) * 2008-03-31 2012-01-31 Symantec Corporation Method and apparatus for identifying invariants to detect software tampering
WO2010143573A1 (ja) * 2009-06-10 2010-12-16 公立大学法人大阪府立大学 物体認識用画像データベースの作成方法、作成装置および作成処理プログラム
US20110199377A1 (en) * 2010-02-12 2011-08-18 Samsung Electronics Co., Ltd. Method, apparatus and computer-readable medium rendering three-dimensional (3d) graphics
US20130187947A1 (en) * 2012-01-20 2013-07-25 Rasmus Barringer Graphics Tiling Architecture With Bounding Volume Hierarchies

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
安田敏宏, 外5名: ""サーバレンダリングを用いた立体映像生成手法に関する検討"", 電子情報通信学会 第19回データ工学ワークショップ論文集, JPN6017049684, 7 April 2008 (2008-04-07), JP *

Also Published As

Publication number Publication date
TW201608521A (zh) 2016-03-01
KR101980990B1 (ko) 2019-05-21
RU2677584C1 (ru) 2019-01-17
EP3143594A1 (en) 2017-03-22
RU2016140574A (ru) 2018-04-17
KR20170094464A (ko) 2017-08-17
US9904977B2 (en) 2018-02-27
TW201545118A (zh) 2015-12-01
US20160027144A1 (en) 2016-01-28
KR20160134778A (ko) 2016-11-23
TW201706957A (zh) 2017-02-16
CN106233337B (zh) 2019-09-24
RU2661763C2 (ru) 2018-07-19
KR101952922B1 (ko) 2019-02-27
EP3143594A4 (en) 2017-12-27
KR102154456B1 (ko) 2020-09-10
JP6504212B2 (ja) 2019-04-24
CN110544289B (zh) 2023-09-19
CN110544289A (zh) 2019-12-06
US20150332429A1 (en) 2015-11-19
SG10201706498SA (en) 2017-09-28
TWI596571B (zh) 2017-08-21
TWI566202B (zh) 2017-01-11
TWI550548B (zh) 2016-09-21
CN110555895A (zh) 2019-12-10
SG11201608884PA (en) 2016-11-29
CN106233337A (zh) 2016-12-14
EP3143594B1 (en) 2020-12-02
JP2017215997A (ja) 2017-12-07
KR20190020197A (ko) 2019-02-27
US9940686B2 (en) 2018-04-10
JP6337322B2 (ja) 2018-06-06
SG10201807923YA (en) 2018-10-30
WO2015175231A1 (en) 2015-11-19
US20160328820A1 (en) 2016-11-10
US9922393B2 (en) 2018-03-20
CN110555895B (zh) 2023-09-29

Similar Documents

Publication Publication Date Title
JP6337322B2 (ja) 方法、コンピュータプログラム、装置およびコンピュータ可読記録媒体
JP6495377B2 (ja) 選択的ラスタライゼーション
JP6745020B2 (ja) 方法、コンピュータプログラム、コンピュータ可読記録媒体および装置
US9251731B2 (en) Multi-sampling anti-aliasing compression by use of unreachable bit combinations
JP6182225B2 (ja) カラーバッファ圧縮
EP2662837A2 (en) Real-time order-independent transparent rendering
KR20150038428A (ko) 일반화된 플레인 인코딩을 이용한 확률적 깊이 버퍼 압축

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180323

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: 20180410

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180412

R150 Certificate of patent or registration of utility model

Ref document number: 6337322

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