週刊アスキー

  • Facebookアイコン
  • Xアイコン
  • RSSフィード

日本が開発したAIプロセッサーMN-Core 2 Hot Chips 2024で注目を浴びたオモシロCPU

2024年11月18日 12時00分更新

 Hot Chipsの最後の講演が、Preferred NetworksのMN-Core 2である。Preferred Networksそのものは日本の会社であり、連載670回でも触れたことがある。ASCII.jpでは同社のニュースはいろいろ掲載されているので、ご存じの方もおられるかと思う。

MN-Core 2

Preferred Networksの西川社長に牧野淳一郎教授から声がかかる

 Preferred Networksは2006年創業となるPreferred Infrastructure(PFI)という企業から2014年に独立した企業である。設立当初のニュースを読むと、「IoTにフォーカスしたリアルタイム機械学習技術のビジネス活用を目的とし、自然言語処理技術、機械学習技術分野で事業を行なう」という話になっていた。ところが同社は2017年に神戸大学と共同開発体制を取り、新しいプロセッサーを開発することを決める。

 もともとの動機は、理化学研究所とPreferred Networksが2016~2017年に共同で行なったNEDO(新エネルギー・産業技術総合開発機構)向けのプロジェクトである。目的は、行列演算を効率的に実行するためのプロセッサー研究で、TSMCの40nmプロセスを利用して試作した。この時理研で開発の指揮を取っていたのが牧野淳一郎教授であった。2012~2022年に理研の計算科学研究機構 粒子系シミュレータ研究チームのチームリーダーだった人物だ。

 Preferred Networksの西川徹社長が、学生時代に牧野教授が手がけていたGRAPE-DRという専用計算機の開発に関わっていたということで、牧野教授から西川氏に声がかかったらしい。プロジェクトそのものは、主にAI推論向けのチップ開発を目指したわけだが、これと並行してAI学習向けのチップを開発するプランが立ち上がることになった。

 2017年から牧野教授は神戸大学の大学院理学研究科教授となったことで、この学習向けのチップは神戸大学とPreferred Networksの共同開発になった。

 この共同開発の結果として2020年に生まれた最初の製品がMN-Coreであり、これを利用したシステムがMN-3である。製造プロセスはTSMCの12nmで、スペックは、ピーク性能が32.8/131/524TFlops(FP64/FP32/FP16)、TDPが500Wである。

MN-Core。4つのダイを一つのパッケージに収めた構造である

 同時代の製品としてはNVIDIA A100がやはり2020年5月の発売であるが、こちらはピーク性能が9.7/19.5/19.5/78TFlops(FP64/FP64 Tensor/FP32/FP16)、TDPが400Wであることを考えると、いかに性能と効率の両面でMN-Coreが高いかがわかるだろう。

 先に連載670回に言及したが、MN-Coreを搭載したMN-3は、初参加となる2020年6月のGreen 500で21.108GFlops/Wを達成して見事1位に輝いている。チップ単体の性能で比較すると、FP64の場合でMN-Coreは65.6GFlops/W、A100は24.25GFlops/Wと倍以上も効率がいい。実際にはシステム全体での消費電力での比較なので、こちらで足を引っ張られている感はあるのだが。

 なぜそれが可能になったか? それはMN-Coreの特異なハードウェア構造に依存する。このあたりは牧野教授の知見というか経験がものすごく色濃く反映された格好だ。MN-Coreと一般的なプロセッサーの基本的な考え方の違いが下の画像だ。

このあたりの発想は、牧野教授が開発したGRAPEシリーズのアクセラレーターとまったく一緒である

 Command scheduler/Cache controller/Network controllerといった実行制御やメモリー制御、複数コアの制御などがすべてソフトウェアで実行されるようになっている。MN-Coreシリーズ(MN-CoreとMN-Core 2の両方)の説明を見ると「従来のプロセッサーとは異なり、アクセラレーター上の各processing element (以下PE)がそれぞれのプログラムカウンターや命令デコーダーを持ちません。すべてのPEは完全に同期的に動作し、ホストCPUで生成された命令列をホストから直接受け取って動作します。」とある。

 要するに、連載298回で紹介したQCDSPに採用されたTI TMS320C31や、連載307回で紹介したCM-2に搭載されたWeitek WTL3132など、そういったアクセラレーターに限りなく近い。ただし単純な浮動小数点演算をターゲットにしているのではなく、行列演算をターゲットにしているのが従来との違いというあたりだろうか?

この記事をシェアしよう

週刊アスキーの最新情報を購読しよう

本記事はアフィリエイトプログラムによる収益を得ている場合があります

この連載の記事