Pixel Visual Core Pixel Visual Coreの概要

Pixel Visual Core

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/06/05 08:10 UTC 版)

ナビゲーションに移動 検索に移動

歴史

Googleは以前、Qualcomm SnapdragonCPUGPUIPU、およびDSPを使用して、Google NexusおよびGoogle Pixelデバイスの画像処理を処理していた。コンピュテーショナルフォトグラフィーの技術の重要性が増してきたことで、GoogleはPixel Visual Core(PVC)を開発した。Googleは、PVCはCPUGPUを使用するよりも消費電力が少なく、テンソル・プロセッシング・ユニット(TPU)のようなASICとは異なり、完全にプログラム可能であると主張している。実際、従来のモバイルデバイスには、固定機能の画像処理パイプラインである画像信号プロセッサ(ISP)が装備されてきた。これとは対照的に、PVCは画像処理だけに限定されない柔軟なプログラマブルな機能を備えている。

Google Pixel 2と2 XLのPVCには、SR3HX X726C502というラベルが付いている[3]

Google Pixel 3と3 XLのPVCには、SR3HX X739F030というラベルが付いている[4]

PVCのおかげで、Pixel 2とPixel 3は98[5]と101[6]のモバイルDxOMark英語版を取得した。後者は、iPhone XRと並んで、一眼レフのモバイルDxOMarkスコアの上位であった[7]

Pixel Visual Coreソフトウェア

PVCプログラマー向けのカーネルの有向非循環グラフのビュー

PVCの典型的な画像処理プログラムは、Halide英語版で記述されている。現在、浮動小数点演算は行わず、メモリアクセスパターンが制限されているHalideプログラミング言語のサブセットのみをサポートしている[8]。Halideは、ユーザーがアルゴリズムとその実行のスケジューリングを分離できるドメイン固有言語である。これにより、開発者はターゲット ハードウェア アーキテクチャに最適化されたプログラムを作成できる[2]

Pixel Visual Core ISA

PVCには、仮想と物理の2種類の命令セットアーキテクチャ(ISA)がある。まず、高水準言語プログラムが、RISC-V ISA[2]に触発された仮想 ISA(vISA)にコンパイルされ、ターゲット ハードウェア世代から完全に抽象化される。次に、vISAプログラムは、いわゆる物理 ISA(pISA)、つまりVLIW ISAにコンパイルされる。このコンパイル手順では、ターゲット ハードウェア パラメーター(PEサイズの配列、STPサイズなど)を考慮し、メモリ移動を明示的に指定するようになっている。vISApISAの分離により、最初のものはクロスアーキテクチャで世代に依存せず、pISAはオフラインまたはJITコンパイルを通じてコンパイルできる[8]

Pixel Visual Coreアーキテクチャ

4コアのPVCの例

Pixel Visual Core は、2~16コア設計の偶数の範囲で、スケーラブルなマルチコアのエネルギー効率の高いアーキテクチャとして設計されている[2]。PVCのコアは、画像処理用に調整されたプログラム可能なユニットである画像処理ユニット(IPU)である。Pixel Visual Coreアーキテクチャも、SR3HXのような独自のチップとして、またはシステム オン チップ(SOC)IPブロックとして設計されている。

画像処理ユニット(IPU)

IPU コアには、ステンシル プロセッサ(STP)、ライン バッファー プール(LBP)、NoC英語版がある。STPは主に、ステンシル計算英語版を実行できる処理要素(PE)の2次元SIMDアレイ、つまりピクセルの小さな近傍を提供する。シストリック アレイ英語版と波面計算に似ているように見えるが、STPには明示的なソフトウェア制御によるデータ移動がある。各PEは、2x 16ビット算術論理演算ユニット(ALU)、1x 16ビット積和演算ユニット(MAC)、10x 16ビットレジスタ、および10x 1ビット述語レジスタを備えている[2]

ラインバッファプール(LBP)

最もエネルギーコストのかかる操作の1つがDRAM アクセスであることを考慮すると、各STPにはデータの局所性を高めるための一時バッファー、つまりLBPがある。使用されるLBPは、さまざまなサイズの読み取りと書き込みに対応する2次元FIFOになっている。LBPは、シングル プロデューサー、マルチコンシューマーの行動モデルを使用する。各LBPは、8つの論理LBメモリとDMA入出力操作用に1つを持つことができる[8]。メモリシステムは非常に複雑であるため、PVC設計者はLBPコントローラを最も困難なコンポーネントの1つとして挙げている[2]。使用されるNoCは、エネルギーの節約とパイプライン化された計算パターンの保存のために、隣接するコアのみと通信するために使用されるリングネットワークオンチップである。

ステンシル プロセッサ(STP)

PEの2次元配列の表現。白は完全なPE(16x16)で、灰色は「halo」(144)の一部である。明示すると、すべての接続が報告されているわけではない。

STPにはPEの2次元配列がある。たとえば、完全なPEの16x16配列と、「halo」と呼ばれる単純化されたPEの4レーンである。 STPには、スカラー レーン(SCL)と呼ばれるスカラープロセッサがあり、小さな命令メモリで制御命令を追加する。STPの最後のコンポーネントは、シート ジェネレーター(SHG)と呼ばれるロードストアユニットであり、シートはPVCメモリアクセスユニットである[2]


  1. ^ a b Cutress. “Hot Chips 2018: The Google Pixel Visual Core Live Blog (10am PT, 5pm UTC)”. www.anandtech.com. 2019年2月2日閲覧。
  2. ^ a b c d e f g h Hennessy, John; Patterson, David (2017). Computer Architecture: A Quantitative Approach (Sixth ed.). Morgan Kaufmann. pp. 579-606. ISBN 978-0-12-811905-1 
  3. ^ Google Pixel 2 XL Teardown” (英語). iFixit (2017年10月19日). 2019年2月2日閲覧。
  4. ^ Google Pixel 3 XL Teardown” (英語). iFixit (2018年10月16日). 2019年2月2日閲覧。
  5. ^ Pixel 2 DxOMark”. 2021年6月5日閲覧。
  6. ^ Pixel 3 DxOMark”. 2021年6月5日閲覧。
  7. ^ iPhone XR DxOMark”. 2021年6月5日閲覧。
  8. ^ a b c d The Pixel Visual Core: Google’s Fully Programmable Image, Vision and AI Processor for Mobile Devices. HotChips2018”. 2021年6月5日閲覧。
  9. ^ Pixel Visual Core (PVC) - Google - WikiChip” (英語). en.wikichip.org. 2019年2月2日閲覧。
  10. ^ Google Partnered with Intel for the Pixel Visual Core Chip in the Pixel 2” (英語). xda-developers (2017年10月25日). 2019年2月2日閲覧。
  11. ^ Pixel Visual Core: image processing and machine learning on Pixel 2” (英語). Google (2017年10月17日). 2019年2月2日閲覧。


「Pixel Visual Core」の続きの解説一覧



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  
  •  Pixel Visual Coreのページへのリンク

辞書ショートカット

すべての辞書の索引

「Pixel Visual Core」の関連用語

Pixel Visual Coreのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Pixel Visual Coreのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのPixel Visual Core (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2024 GRAS Group, Inc.RSS