Metaは何年も前からチップの開発についてほのめかしており、米ZDNetが2019年にチーフAIサイエンティストであるYann LeCun氏にインタビューを行ったときにも、そのことに言及している。ただし同社は、同業他社が次々とチップを発表し、Cerebras SystemsやGraphcore、SambaNova SystemsなどのスタートアップがAIに特化した特殊なチップでNVIDIAに挑戦する間も、その取り組みの詳細については沈黙を守ってきた。
MTIAにはスタートアップのチップに似ているところがある。チップの中心は「シストリックアレイ」と呼ばれるAIチップでよく使われる設計で、いわゆる「Processing Element」(PE)を8×8のグリッド状に配置してメッシュ構造にしたものだ。

提供:Meta Platforms

提供:Meta Platforms
MTIAチップの特徴は、トレーニングと推論という異なる2つのフェーズを両方扱えるように作られている点だろう。トレーニングとは、AIのニューラルネットワークを、期待通りの性能が出せるまで改良していくフェーズの処理を指し、推論とは、ニューラルネットワークを実際に使用して、ユーザーのリクエストに応じて予測を行うフェーズの処理を指す。通常、これらの2つのフェーズの処理は要求が大きく異なるため、それぞれ設計が異なるチップで処理される。
またMetaは、MTIAは一般的なGPUと比べて、消費電力当たりの浮動小数点演算の回数が最大で3倍に達すると主張した。現時点では、複雑なニューラルネットワークモデルを扱った場合の性能はGPUを下回っているものの、将来のバージョンでは、より複雑なタスクも効率的に処理できるようになるという。

提供:Meta Platforms
同日のプレゼンテーションでは、ハードウェアとソフトウェアを協調して設計したことによるMTIAのメリットが強調されていた。これは、ハードウェアエンジニアが、同社のPyTorchの開発者と対話しながらチップの設計を進めたということだ。
このチップで実行するコードの開発には、PyTorchやC++のほかに、このチップ用に開発された「KNYFE」と呼ばれる専用言語を利用することができる。Metaは、KNYFEについて、「機械学習演算子による短くハイレベルな説明が入力されると、その演算子をMTIA向けに実装した、ローレベルの最適化されたC++のコードを生成する」ものだと説明している。
またMetaは、同社が主導的な役割を果たしているデータセンターのハードウェア設計をオープンソース化するプロジェクトである「Open Compute Project」をベースにしたサーバーコンピューターに、複数のMTIAチップを搭載する方法についても説明した。
MTIAの詳細については、Metaのブログ記事で紹介されている。
Metaのエンジニアは、6月に米フロリダ州オーランドで開催されるカンファレンス「International Symposium on Computer Architecture」で、「MTIA: First Generation Silicon Targeting Meta's Recommendation System」と題した論文を発表する予定だ。
この記事は海外Red Ventures発の記事を朝日インタラクティブが日本向けに編集したものです。