出典: thenextplatform の Semiconductor Industry Observer が翻訳および編集しました。ありがとうございます。 Google I/O 2016の基調講演の最後に、GoogleのCEOであるピチャイ氏は、同社が最近AIと機械学習で達成した成果である、Tensor Processing Unit(略してTPU)と呼ばれるプロセッサについて言及した。今月をもって、第 1 世代の TPU プロセッサは廃止されました。 今朝早くに開催されたGoogle I/O 2017カンファレンスでは、Android 8.0のプロモーションに加え、Googleは人工知能にも焦点を当て、第2世代TPUが誕生しました。 TPUは、GoogleがAIコンピューティングサービス向けに独自に開発した高性能プロセッサです。第1世代の製品は、コンピューティング性能に重点を置いたAlphaGoなどの人工知能に使用されてきました。 第 1 世代と比較して、第 2 世代 TPU は主に人工知能の学習および推論機能を強化しています。パフォーマンスに関しては、新しい Google TPU は 180TFLOP の浮動小数点パフォーマンスを実現できます。これは、従来の GPU の 15 倍、CPU の浮動小数点パフォーマンスの 30 倍に相当します。 さらに、Google は TPU ポッドと呼ばれるコンピューティング アレイもリリースしました。これは最大 64 個の第 2 世代 TPU を搭載でき、浮動小数点パフォーマンスが驚異的な 11.5PFLOPS に達することを意味します。 名前からわかるように、TPU は Google のオープンソースのディープラーニング フレームワーク TensorFlow にインスピレーションを得ており、現在 TPU は Google 内でのみ使用されているチップです。 TPUの誕生2011年、Googleは問題があることに気付きました。彼らは、計算負荷が高く、コンピューティング リソースに負担をかけているディープラーニング ネットワークの使用を真剣に検討し始めています。 Google が計算したところ、各ユーザーがディープラーニング音声認識モデルに基づく音声検索サービスを 1 日 3 分間使用すると、既存のデータセンターの規模を 2 倍にする必要があることがわかりました。より強力で効率的な処理チップが必要です。 どのようなチップが必要ですか?中央処理装置 (CPU) は、さまざまなコンピューティング タスクを非常に効率的に処理できます。しかし、CPU は一度に比較的少数のタスクしか処理できないという制限があります。一方、グラフィックス プロセッシング ユニット (GPU) は、単一のタスクを実行する効率が低く、処理できるタスクの範囲が狭くなります。しかし、GPU の強みは、多くのタスクを同時に実行できることにあります。たとえば、3 つの浮動小数点数を乗算する必要がある場合、CPU は GPU よりも優れていますが、3 つの浮動小数点数を 100 万回乗算する必要がある場合、GPU は CPU を圧倒します。 複雑なディープラーニング ネットワークでは数百万の計算を同時に実行する必要があるため、GPU はディープラーニングに最適なチップです。 Google は Nvidia GPU を使用していますが、それだけでは十分ではなく、さらなる速度を求めています。もっと効率的なチップが必要です。単一の GPU はそれほど多くのエネルギーを消費しませんが、Google の何百万台ものサーバーが 24 時間稼働している場合、エネルギー消費は深刻な問題になる可能性があります。 Google は、より効率的な独自のチップを開発することを決定しました。 2016年5月、GoogleはI/Oカンファレンスで初めてTPU(Tensor Processing Unit)を発表し、このチップが1年間Googleデータセンターで使用されてきたと述べた。イ・セドルがAlphaGoと対戦した際にもTPUが使用され、GoogleはTPUをAlphaGoがイ・セドルを破るのに役立った「秘密兵器」と呼んだ。 第一世代TPUの内部アーキテクチャ この図は、左側の外部 DDR3 メモリとホスト インターフェイスを除いた TPU の内部構造を示しています。コマンドはホストからキューに送信されます (ループなし)。これらのアクティベーション制御ロジックは、命令に応じて同じ命令を複数回実行できます。 TPU は複雑なハードウェアではなく、標準の X86 由来のアーキテクチャではなく、レーダー アプリケーション用の信号処理エンジンのように見えます。 Jouppi 氏は、多数の行列乗算ユニットがあるにもかかわらず、同社の GPU は浮動小数点ユニットとの共同処理に優れていると述べました。また、TPU には保存されたプログラムがなく、ホストから直接命令を送信できることにも注意することが重要です。 TPU 上の DRAM は、行列乗算ユニットに供給するためにさらに多くの重みをフェッチする必要があるため、1 つのユニットとして並列に動作します (スループットは 64,000 になります)。 Jouppi 氏は、データフローをシストリックする方法については言及しなかったが、ホスト ソフトウェア アクセラレータの使用がボトルネックになると述べた。 256×256配列スケーリングデータフローエンジン、行列乗算累積後の非線形出力を実現 2 番目の画像からわかるように、TPU には 2 つのメモリ ユニットと、モデル内のパラメータ用の外部 DDR3 DRAM があります。パラメータが入力されると、上から行列乗算ユニットにロードできます。同時に、アクティベーション(または「ニューロン」からの出力)を左から読み込むことができます。これらは縮約された形式でマトリックス ユニットに入り、マトリックス乗算を生成します。これにより、サイクルごとに 64,000 回の累算を実行できます。 言うまでもなく、Google は TPU のパフォーマンスと効率を向上させるためにいくつかの新しいトリックとテクノロジーを使用した可能性があります。たとえば、高帯域幅メモリやハイブリッド 3D メモリの使用などです。しかし、Google の問題は、分散ハードウェア全体で一貫性を維持することです。 データ推論が可能な第2世代TPU第 1 世代の TPU はディープラーニングの最初の段階でしか使用できませんでしたが、新しいバージョンではニューラル ネットワークがデータについて推論を行うことができます。 Google の Brain 研究チームのディレクターであるジェフ・ディーン氏は、「これらの TPU を AI トレーニングにさらに活用し、実験サイクルを高速化できるようになると期待しています」と述べています。 「第1世代TPU製品を設計する際、チップの設計と開発を行うために、比較的完備した優秀なR&Dチームを設立しました。これらのR&D人員は基本的に第2世代TPUのR&Dプロジェクトに携わっています。R&Dの観点から見ると、第2世代TPUは第1世代と比較して、システム全体の観点から単一のチップのパフォーマンスを主に向上させており、第1世代TPUチップをゼロから設計するよりもはるかに簡単です。そのため、チップのパフォーマンスを向上させる方法、チップをシステムにうまく統合する方法、チップの役割をより大きくする方法を考えるエネルギーを増やすことができます。」とディーンはスピーチで述べた。 今後も Google の進捗状況を引き続き追跡し、このネットワーク アーキテクチャをさらに理解していきます。しかし、その前に、新世代 TPU のアーキテクチャ、パフォーマンス、動作モードを理解し、TPU がどのように超高性能コンピューティングを実行するかを理解する必要があります。今回のカンファレンスで、Google は新世代 TPU のチップサンプルやより詳細な技術仕様を公開しませんでしたが、これまでにわかっている情報から、新世代 TPU についていくつかの推測を立てることはできます。 今回公開された TPU の写真から判断すると、第 2 世代 TPU は Cray XT または XC 開発ボードに少し似ています。写真から、チップ間およびチップと外部間の接続機能を維持しながら、相互接続された複数のチップが開発ボードにはんだ付けされていることが簡単にわかります。ボード全体には 4 つの TPU チップがあります。前述したように、各チップは 180TFLOP の浮動小数点パフォーマンスを実現できます。 開発ボードの左右には 4 つの外部インターフェースがありますが、ボードの左側に 2 つのインターフェースが追加されているため、ボード全体の見た目が少し乱雑になっています。 。 AMD の今後の「Vega」プロセッサが GPU に直接接続できるのと同じように、将来的に各 TPU チップがメモリに直接接続できるようになれば、非常に興味深いものとなるでしょう。左側の 2 つの追加インターフェースにより、将来的には TPU チップがメモリに直接接続したり、上流の高速ネットワークに直接接続してより複雑な計算を実行したりできるようになります。 Google がチップに関する詳細情報を明らかにしない限り、これらはすべて写真に基づいた推測です。各 TPU チップには、外部デバイスに接続するための 2 つのインターフェイスがあります。左側には外部開発用の 2 つの追加インターフェイスがあり、開発者はこれを基にさらに多くの機能を設計し、拡張機能を追加できます。ローカル ストレージ デバイスへの接続でも、ネットワークへの接続でも、これらの機能は理論的には実現可能です。 (これらの機能を実装するには、Google はこれらのインターフェース間で比較的緩やかで実現可能なメモリ共有プロトコルを確立するだけで済みます。) 下の図は、複数の TPU ボードの接続形態を示したものです。Google によれば、このモデルは最大 11.5 ペタフロップスの機械学習コンピューティング能力を実現できるとのことです。 この結果はどのようにして得られたのでしょうか?上記の接続方法は、見た目上はオープン コンピュータ アーキテクチャなどに非常によく似ています。縦方向から見ると8枚のTPUプレートが積み重ねられ、横方向から見ると4枚のTPUプレートが並んで配置されています。現時点では、各開発ボードが完全な TPU ボードなのか、半分の開発ボードなのかは判断できません。ボードの片側に 6 つのインターフェースがあり、反対側に 2 つのインターフェースがあることしかわかりません。 注目すべきは、ボードの中央に 4 つのインターフェースがあり、左右に 2 つのインターフェースがあり、左右には TPU 開発ボードのようなシェルがないことです。これに対するより合理的な説明は、左側と右側が TPU チップ インターフェイスではなく、ローカル メモリ インターフェイスに接続されているということです。 それでも、少なくとも 32 台の TPU 第 2 世代マザーボードが稼働しており、これは 128 個の TPU チップが同時に稼働していることを意味します。大まかに計算すると、システム全体の計算能力は約11.5京倍になります。 例えば、このコンピューティングパワーが将来的に商業分野に応用できれば、現在Googleの大規模翻訳作業で使用されている32個の最先端のGPUを、将来的には4個のTPUボードにまで削減でき、翻訳に要する時間を大幅に短縮できる可能性がある。 注目すべきは、前述の TPU チップは浮動小数点演算に適しているだけでなく、高性能コンピューティングにも適しているということです。 TPU によるトレーニングと学習第 1 世代 TPU と比較すると、計算能力の向上に加えて、第 2 世代 TPU の最大の追加機能はデータ推論機能です。ただし、この推論モデルは、まず GPU でトレーニングする必要があります。このトレーニング モデルにより、Google などの開発者は実験のペースを落とし、トレーニング モデルを作り直す必要が生じ、マシンが一定レベルのデータ推論能力を獲得するまでに時間がかかるようになります。 そのため、まずは比較的単純な単一のデバイスでトレーニングを実施し、その結果をより複雑な環境に持ち込んで、より高いレベルのデータ推論機能を獲得する必要があります。この反復的なプロセスが不可欠です。将来的には、Intel の人工知能向け GPU もこの反復モデルを採用する予定です。 Nvidia の Volta GPU についても同様です。 「テンソルコア」を搭載したNVIDIAのVolta GPUは、超高速の機械学習とトレーニング機能を備えており、将来的には単一のデバイスで120兆回の計算が可能になる可能性がある。この計算能力は、昨年発売されたPascal GPUよりも約40%高い。しかし、Google の TPU のような超高速コンピューティング パワーの影響を私たちの生活の中で直接体験することは難しいものの、ますます高速化する GPU のコンピューティング パワーは依然として印象的で、私たちにとってより身近なものとなっています。 ディーン氏は、Nvidia Volta で使用されているアーキテクチャは非常に興味深く、コア マトリックスを通じてアプリケーションを高速化できると述べました。 Google の第 1 世代 TPU も、ある程度は同様のアイデアを採用しており、実際、これらのテクノロジは機械学習プロセスで今でも使用されています。 「線形計算能力を高速化できることは常に非常に有用です」とディーン氏は強調した。 ハードウェアの影響にかかわらず、ユーザーを引き付けることができる領域はまだたくさんあります。機密のまま残されているプロジェクトとは異なり、Google は将来的に TPU テクノロジーを Google Cloud Platform に適用する予定です。 Google の上級研究員であるジェフ・ディーン氏は、さまざまな手段で競争を制限するつもりはなく、将来的には Volta GPU や Skylake Xeon と競争できるように、TPU にさらなる可能性と余地を提供したいと述べました。 ディーン氏は、プラットフォームは開発者の思考を制限するのではなく、開発者が独自のモデルを構築して実行する機会をさらに提供すべきだと考えています。今後、Google は、オープンな科学研究プロジェクトに関心を持ち、機械学習を継続的に進歩させている研究チーム向けに、クラウド プラットフォーム上で 1,000 台以上の TPU を提供する予定です。 ディーン氏は、現在 Google 社内では、機械学習を行う際に、同じデバイスであっても GPU と CPU の両方を使用して、バランスをより確実にしていると述べました。ただし、新世代の TPU チップについては、トレーニングと学習中の電力消費量を現時点で正確に見積もることはできませんが、その機能が間違いなく Volta GPU の最高峰であることは断言する価値があります。システムは機能的に高性能コンピューティングと 64 ビット高性能コンピューティングに対応しているため、ワークロードの計算は非常に複雑になります。 Nvidia の GPU でも、使用中に同様の問題が発生します。今後、この問題をより良く解決するためには、エンジニアとともに努力を続けていく必要があります。 ディーン氏もこの時点で認めている。「第1世代TPUチップの整数計算方式とは異なり、第2世代チップは浮動小数点演算を実行できます。そのため、チップの学習およびトレーニングプロセスでは、固定モデルのみを使用する必要があり、アルゴリズムを変更する必要はありません。エンジニアは同じ浮動小数点計算方式を使用できるため、作業負荷が大幅に軽減されます。」 Nvidia や Intel に加えて、Google がカスタマイズされたハードウェア製品を市場に投入することは、企業にとって良いことかもしれません。 TPU は市場ではまだ比較的マイナーな技術だからです。第 2 世代 TPU 製品が Google Cloud Platform に適用された後、Google は多数のユーザーに対してトレーニングを実施し、このテクノロジの開発をさらに促進する予定です。 Google がなぜチップを商品化しないのか疑問に思っている人にとって、上記の内容はおそらく答えを与えてくれるでしょう。人工知能とニューラル学習技術が発展し続けるにつれて、TPU は Google Cloud で大きな役割を果たし、技術の進歩を促進する大きな力となるでしょう。 TPU は Google にとって何を意味しますか?ディープ ニューラル ネットワーク専用に Google が開発したソフトウェア エンジン。 Googleは、ムーアの法則の成長率によれば、現在のTPUの計算能力は、今後7年間で達成できる計算レベルに相当すると述べた。機械学習にワット当たりの命令数をより多く提供することができ、これは各演算に使用するクリスタルの数が少なくなり、つまり1秒間により多くの演算を行えることを意味する。 Google は、ディープラーニング システム プラットフォーム TensorFlow とも深く連携しており、検索、自動運転車、インテリジェント音声など、機械学習技術の利用を必要とする 100 以上のプロジェクトを含め、より優れたサポートを提供し、より強力なエコシステムを構築できます。 TPU はディープラーニングの未来でしょうか?ディープラーニングコンピューティングにおけるチップの導入はゼロサムゲームではありません。現実世界のディープラーニング ネットワークでは、システムの GPU が他の GPU や Google TPU などの ASIC と通信する必要があります。 GPU は、ディープラーニングに必要な柔軟性を備えた理想的な作業環境です。ただし、ソフトウェア ライブラリまたはプラットフォームに完全専用にする場合は、ASIC が理想的です。 Google の TPU は明らかにそのような要件を満たしています。 TPU の優れたパフォーマンスにより、TensorFlow と TPU が一緒にアップグレードされる可能性が高くなります。 Google の関係者は、TPU を外部に販売しないことを何度も明言しています。ただし、機械学習ソリューションに Google Cloud サービスを使用するサードパーティは、TPU の優れたパフォーマンスのメリットを享受できます。 スマートチップ市場の状況は何度も変化してきました。Google TPU の登場により、ニューラル ネットワーク/ディープラーニングの特定領域を加速するチップのトレンドがより明確になりました。ハイエンドの AI アプリケーションをサポートするには、強力なチップが必要です。ハードウェアやソフトウェアのいずれかが欠けていると、中国のインテリジェントエコシステムは発展できません。中国のプロセッサの学術的、工学的技術は絶えず進歩しています。中国のチップが世界の舞台に登場し、早い時期に海外の同業他社と競争するようになることを期待しています。 英語原文: https://www.nextplatform.com/2017/05/17/first-depth-look-googles-new-second-generation-tpu/ |
<<: 柯潔はなぜ「負けてカッとなった」と言ったのか!人間対機械の第一ラウンドを説明する8つの質問
>>: ディープラーニングの難しさ:ニューラルネットワークが深くなるほど、最適化の問題は難しくなる
[[420388]] '('、')'、'{'、...
[[199326]]近年、人工知能の力強い台頭、特に昨年のAlphaGoと韓国のチェスプレイヤー、イ...
OpenAI の無敵という神話は崩れ去った。 Claude 3 (中国語対応)が一夜にして発売され...
データセンター内外を問わず、自動化に境界はないと考えるのは簡単です。 AI がデータ センターの運用...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...
1. はじめに広告主は通常、ユーザー タグに基づいて広告のターゲット ユーザーを定義します。たとえば...
技術導入への困難な道のりは、特定の客観的な法則に従わなければならず、それはいかなる利害関係者の意見に...
状態空間モデル (SSM) は、最近注目を集めている Transformer の代替手段です。その利...
今日、AI プログラムは、写真やビデオ内の顔や物体を認識し、音声をリアルタイムで書き起こし、X 線ス...
[[335691]]ビッグデータダイジェスト制作出典: Wired編纂者:Roubao、Xia Ya...
今日、ビッグデータ アプリケーションがビジネスのあらゆる側面で急増しているため、IT チームは膨大な...
工業情報化部科学技術庁は、感染予防・抑制に努め、感染拡大を阻止するために、「人工知能の力を十分に発揮...
近年、人工知能(AI)の急速な台頭と各産業への応用は、社会経済の生産構造と生産関係に破壊的な影響を及...