WEB MAGAZINE
menu
logo_UTokyo
logo_UTokyo

TAGS

理学のフロンティア

未来のコンピュータを探求する魔法戦士

大学院情報理工学系研究科 コンピュータ科学専攻 准教授

高前田 伸也

May 8, 2023

research01

少年の頃からのパソコンへのあこがれ

「アーキテクチャ」には「建築」という意味がある。だから、コンピュータアーキテクチャとは、コンピュータという建築──それは工場や城のようなダイナミックな装置のような建築だ──をどう造るか、土台から間取り、機械の配置、人の流れやエネルギーの使い方に至るまで、その建築の設計思想や設計技術を創造する学問だと言えるかもしれない。目指すのは、より高速で強力、かつエネルギー効率に優れたコンピュータであり、その先にはまだ見ぬ未来のコンピュータがある。このコンピュータアーキテクチャの領域において、高前田准教授は「魔法戦士でありたい」と、こう語る。

「ゲームの『ドラクエ』では、戦士と魔法使いの両方をマスターすると上級職の魔法戦士になることができるんです。半導体の回路などのハードに精通しているのが戦士で、AIなどの理論に精通しているのが魔法使いだとすれば、最強の戦士か最強の魔法使いかではなく、その両方である魔法戦士であるからこそ思いつくアイデアがあるはず。それがコンピュータアーキテクチャの研究に求められているものではないかと思うんです。とはいえ、『ドラクエ』の世界では魔法戦士はめちゃくちゃ弱いんです(笑)。だから、私は最強の魔法戦士になりたい」

小さな頃からパソコンに興味があり、小学校低学年の時には、バインダーノートにキーボードの絵を描いて、まさにノートパソコンのモックアップのようなものを作って遊んでいたという。本物のノートパソコンを手にしたのは、高専1年の時で、アルバイトで貯めたお金で買った。Windows XPが登場した頃だったという。当時普及し始めたインターネットがやりたかったのだ。

「高専では情報の授業があり、そこでプログラミングに夢中になりました。すべてが自分の手の内にあるというか、コンピュータの中で思い通りのことができるのが面白かったのですね。とにかくプログラミングがとても楽しくて、情報工学への興味が募り、東工大に編入しました」

未来のCPUをシミュレーションによらずに評価できる仕組みと技術──プロトタイピング・システムの研究で学位を取り、修士修了後は就職するつもりでいたが、学会に連れていってもらった時に目にした先輩たちの様子で気が変わる。

「二次会でお酒を飲んでいたときでしたが、助教の方やポスドクの方たちが、年齢も違うのに、対等に熱く議論している姿がとっても楽しそうで、あ、研究者になるのもいいなと思ったんです。それまでは経営コンサルタントになってお金を稼ごうと思っていましたが、その気持ちが一瞬で消えました」と高前田は懐かしそうに笑う。

博士課程ではカーネギーメロン大学(Carnegie Mellon University)に派遣されるが、そこでの研究が自分にとっての大きな原点となったという。

「2カ月足らずの短い滞在だったのですが、本当に宝もののような2カ月でした。カーネギーメロン大学はコンピュータ・サイエンスでは世界トップクラスだと思いますが、コンピュータアーキテクチャやFPGA(フィールド・プログラマブル・ゲート・アレイ)で有名なJames C. Hoe先生のもとでハードウェア設計のためのコンパイラソフトウェアの研究をしました。夏で、日が長く、夜の10時ぐらいまで明るかったので、1日中ずっとコードを書いていました」

やわらかいハードウエア

FPGA──高前田が「やわらかいハードウエア」と呼ぶこの半導体デバイスは、ユーザー(プログラマ)がデジタル回路の構成を自在に変更できるもの。

コンピュータの心臓部はCPUというエンジン部に演算回路や制御回路、レジスタファイルやキャッシュメモリなどのさまざまな要素を組み合わせてできている。これらハードウエアは、工場で一度製造されてしまえば回路をいじって変えることはできない。ところが、このFPGAでは、ソフトウエアを使って回路を電気的に操作し、自分の好きなように自由に変えることができるのだ。いわばブロックおもちゃのように自在な形に組み立てられるということが、「やわらかい」と呼ぶ所以である(もちろん、物質的にではなく、電気的に)。ハードウエア記述言語とは、いわばそのブロックを組み立てるための設計図のことである。

実は、このFPGAの研究こそが、高前田が学部生の頃から取り組んできたテーマであり、いまも彼の主要なターゲットとなっているものだ。

「FPGAを使えば、そこに自分の思い描いたようなCPU、たとえばAI専用回路を作ったりすることができます。ポケモンで言えばメタモンみたいな感じに変身するデバイスというわけです(笑)。私が学位をいただいたのは、100コア、200コア並んだ未来のCPUを、FPGAを使って模倣するための仕組みの研究でした」

高前田が開発したVeriloggen(ベリログジェン)、そしてNNgen(エヌエヌジェン)は、このFPGAで、Pythonという一般的なプログラミング言語を用いてさまざまな回路を自由に設計することを可能にするコンパイラなどのツールであり、オープンソースとして利用されている。

「ソフトウエアの力を使うことでハードウエア設計が楽になれば、多くの技術者が自ら構想した“複雑怪奇”な回路も作ることができるようになります。その結果、計算効率が1%向上したコンピュータができたとすれば、全世界のコンピュータが1%効率よくなることにつながる–––。それはかなりすごいことなのです」

高前田が開発したハードウエア設計ツールはそんな新しい技術を生むだけでなく、特定の目的に特化した効率のよいコンピュータを、FPGAを用いて作り出す手助けともなる。でも、これはコンピュータアーキテクチャと、どうつながるのだろうか?

「以前は、コンピュータアーキテクチャの研究は、CPUはどうあるべきかなど、CPUの中の細かい仕組みに取り組むようなものが多かったんです。でも、私はもっと広く捉えていて、計算をする仕組みとそれを実現するソフトウェアとハードウェアのあり方こそがコンピュータアーキテクチャの重要な研究対象だと考えています。とにかく、広く、いろいろやろうというのが私の研究スタイルなのです」

未来のコンピュータとタコの足

高前田はハードウエア設計技術こそが自分のライフワークだと語る。

「CPUやAIチップといった回路の構造を表現する技術に私はとても興味があって、要はプログラミング言語のハードウエア版だと思ってもらえばいいのですが、今後も取り組んでいくべきものと思っています。そういうコンピュータの低レイヤーを技術的に操ることができる自信があるので、それを土台にして、いわばAIといった重要な計算の効率化に取り組んでいきたいです。AIの計算効率化は今後さらに重要になっていくので、ニューラルネットワークの計算に適したAIチップの研究開発も楽しく進めています」

高前田が言う「低レイヤー」とは回路などのハードの層。冒頭の『ドラクエ』の比喩で言えば、戦士の世界だ。そしてその上のレイヤーが魔法使いの世界であり、理論やプログラムなどの抽象度の高い層である。「プログラミング言語のハードウエア版」とは、魔法使いの魔法を戦士の手で実現することと言いかえられるだろうか。そしてゴールは、やはり高速化であり、高いエネルギー効率である。なぜなら、それこそが社会が、そして地球が求めていることだからだ。

「ニューラルネットワークやディープラーニングといったものを土台にして、誰も想像できなかったような新しい応用がたくさん出てきています。話題のChatGPTもそうですね。ChatGPTは、膨大な計算能力と膨大なデータを投入することによって、人を脅かすほどの知能をつくっているわけです。でも、我々が人間のような知能を作ろうと本気で思うのであれば、計算能力は今のコンピュータではぜんぜん足らないのです。よく言われるのは、人間はサンドイッチ1個のエネルギーでも1日中、頭を使って高度なことができますが、コンピュータはそのレベルにはまだまったく到達していないということ。人間ほどエネルギー効率の優れたコンピュータは世の中にはまだ存在していないのです。つまり、我々はコンピュータをもっと速く、もっと小さくしないといけない。それが社会的にも重要ですし、私がAIハードウエアを研究している理由もそこにあります」

もちろん、高速化・効率化を目指すその歩みはさまざまな領域ですでに始まっている。

「デジタルのニューラルネットワークを高効率で動かすという研究は重要で、私たちも取り組んでいますが、一方で、別に0と1のデジタルにこだわる必要もないのではないかという考えもあります。たとえば、曖昧な特性を許容するコンピュータというものも考えられていて、この発想もとても重要だと思います。Approximate Computing(近似計算)というものですが、人間がどれだけ計算の誤りを許容できるかを判断して、厳密な正確さを求めない計算は少ないエネルギーで“それっぽく”行おうという技術です。実は自然現象に近いアナログ回路で計算しましょうというアイデアも、何十年も前に提唱されたことがあったのですが、ムーアの法則で半導体の集積化が劇的に進んでいったことで忘れ去られてしまいました。ところが、最近はムーアの法則ももう終わりそうだということで、揺らぎはあるかもしれないけれども、電力が少なくて済むアナログ回路で計算しようという考えが再び登場してきているのです」

リザバー計算(リザバーコンピューティング)という、液体やタコの足(!!)を用いる、既存のコンピュータとはまったく異なる発想の計算方法の研究が世界ではなされている。未来のコンピュータは、量子コンピュータだけではないのだ。

「量子コンピュータでは誤り訂正を古典コンピュータで行う必要があります。ですから、未来のコンピュータのあり方を考える上では、量子だけやっていればよいというわけではなく、古典コンピュータを熟知している必要もあるし、量子やデジタル回路以外の選択肢として、あの不思議なリザバー計算についても知っておいたほうがいい。とにかく使えるものはたくさんあるので、それらをどう組み合わせて“調理”してやろうか、そう考えるのがコンピュータアーキテクチャだと思います」

世界に大きなインパクトを与えるものを

作る家ではなく、作る作業や使う道具のほうに興味がある大工さんみたいなものだと、高前田は自分のことを言う。あるいは、Appleを創業した二人で言えば、自分はジョブズではなく、ウォズニアックだとも。その一方で、どういうコンピュータであるべきかという真理を追究したい気持ちもある。それがわからないので研究しているのだとも言う。

「最近、個人的に“盛り上がっている”のは、コンピュテーション・イン・メモリ(CIM/Computation in Memory)、あるいはプロセッシング・イン・メモリ(Processing in Memory)という、メモリの中で計算するというものです。普通は、計算のための回路とメモリは分かれていて、メモリからデータを持ってきたり、戻したりしながら計算をするわけです。ところが、CIMというのは、メモリの中のデータを移動させずに、そのままで計算しようという考え方なんです。データは移動させるときにエネルギーを使いますが、CIMだとデータが動かないのでエネルギー消費が極めて小さくて済む。これに関する論文はいろいろあるのですが、実際に動くものをつくるのはとても難しい。だからこそ作ってみたいなというのは、ちょっとありますね」

ムーアの法則に終焉が訪れ、トランジスタの集積量が今後上がらなくなったとき、さまざまな新しいアイデアを用いてエネルギー効率を何倍にも上げていこうとするのが、コンピュータアーキテクチャの仕事だと高前田は言う。コンピュータの高速化、エネルギーの高効率化は、AIでも、創薬でも、防災でも、天気予報でも、社会のあらゆる面で必要とされているからだ。そのためにも、コンピュータアーキテクチャについてともに学び研究しようじゃないかと、高前田はこんなメッセージを若者たちに送る。

「今あるコンピュータやAIを使うだけでなく、その背後にあるコンピュータの仕組み、情報科学の仕組みを理解すれば、その次の未来の仕組みをあなたが作ることができるのです。コンピュータアーキテクチャやCPUに限らず、AI、機械学習、自然言語処理でも、今あるものの仕組みが分からないと次のものは作れない。ぜひ一緒にそれらを深く学び、一緒に次なるものを作りましょう。世界に大きなインパクトを与えるものをきっと作り出せると思います」

プライベートではクルマ好きな二児の父である高前田。日々の研究で一番楽しい時間はという問いに高前田はこう答えた。

「毎週木曜日に、研究室で学生たちと議論しているときですね。『これ、こうしたほうがよくない? これ、おかしいよね。あっ、それって、そういうことか!!』などと、学生たちとあれこれ話しているときが、自分もいろいろ頭使って考えているので、自分のIQが一番高いときだと感じます(笑)。一人で考えても思いつかないことが、たくさん出てくるので、圧倒的に楽しい時間なんです」

魔法戦士はそう言ってとびきりの笑顔を浮かべた。

研究室:https://sites.google.com/view/casys-ja/

※2023年取材時
文/太田 穣
写真/貝塚 純一

大学院情報理工学系研究科
コンピュータ科学専攻 准教授
TAKAMAEDA Shinya
高前田 伸也
2014年、東京工業大学大学院情報理工学研究科計算工学専攻博士課程修了。2014年〜2016年、奈良先端科学技術大学院大学 情報科学研究科 助教。2016年〜2019年、北海道大学 大学院情報科学研究科 情報エレクトロニクス専攻 准教授。2019年〜現在、東京大学 大学院情報理工学系研究科 コンピュータ科学専攻 准教授。
TAGS

image01

星間に生命の起源を探す

February 1, 2024

image01

夢、それは究極の物質を探し出すこと

December 4, 2023

image01

数学、それは面白くてやめられないゲーム

October 2, 2023