No.015 特集:5Gで変わる私たちのくらし
連載02 あらゆるモノに知性を組み込むAIチップ
Series Report

第3回
AIチップが開く、新しい情報処理のパラダイム

 

  • 2017.11.30
  • 文/伊藤 元昭

AIチップの進化と利用は、今始まったばかりだ。これから何十年もの間、様々な技術が継続的に投入されることによって進化し続け、それぞれの時代で求められる有用な応用を次々と生み出していくことだろう。ただし、AIチップもコンピュータの一種であることには変わりない。現在のコンピュータが抱えている固有の技術課題は、AIチップを進化させる上でも問題になる。特に、「フォン・ノイマン・ボトルネック」と呼ばれる、コンピュータの高速化を阻む本質的な課題を解決しない限り、AIチップの成長シナリオは描けない。連載第3回の今回は、未来のAIチップが進化し続けていくための道を開く「脳型チップ(ニューロモーフィック・チップ)」の開発動向を解説する。

現在使われているほとんどのコンピュータは、約70年間使われ続けてきた、たった1つの基本原理に沿って作られている。天才数学者のジョン・フォン・ノイマンが考案したと一般に言われている「ノイマン型アーキテクチャ*1」という汎用計算機の構造である(図1)。様々な演算を自在に実行できる汎用性を強みに、代わるものがない価値を誇ってきた技術である。ワープロやウェブの閲覧、ゲームなど、様々な用途に利用できる汎用性の高いパソコンは、ノイマン型だからこそ実現可能なものだ。

AIチップを3種類の系統に分類
[図1] ノイマン型アーキテクチャの構造
作成:伊藤元昭

前回解説したGoogle社の「TPU*2」のような第1世代のAIチップも、スマートフォンや家庭用ゲーム機のCPUも、全てノイマン型をベースにして作られている。

ノイマン型ベースでは性能向上が困難に

コンピュータ界に長年君臨してきたノイマン型だが、70年を経て、さすがに技術的な疲弊が見えてきた。根本的な対策を取らない限り、これ以上の高性能化は望めない本質的欠点があるのだ。

ノイマン型では1つの演算を実行する度に、演算装置が記憶装置から命令とデータを読み込み、演算が終わった命令は破棄し、結果を記憶装置に書き込む。各プログラムに沿って、こうした作業を繰り返していくわけだ。これは遠い職場に毎日通うようなもので、一見、まどろっこしい手順だと感じるかもしれない。だが、命令をひとつひとつ確認し、データを必ず所定の位置に置きながら慎重この上なく働くからこそ、様々な作業を混乱することなくこなせるのだ。

ノイマン型は、演算装置と記憶装置の間のやり取りを高速化できていたうちはシステム全体を高速化できた。それが近年、両者を結ぶ配線での信号伝達を高速化できなくなってきた。

通常、電子機器では素子や回路の間を金属配線でつないでいる。こうした配線には、材質や形状に応じた電気容量が存在し、一方の端からもう一方の端まで信号を伝えるのに、一定の時間が掛かる。水道の蛇口につないだ空の状態のホースに水を流すと、端から水が出てくるまでに時間が掛かるのと同じ原理だ。

ノイマン型では避けられないこの遅れが、コンピュータ全体の性能向上の足かせになっている。つまり、仕事場での作業効率がどんなに高まっても、通勤時間の長さが、こなせる仕事量を頭打ちにしているのだ。こうした性能向上の阻害要因のことを「フォン・ノイマン・ボトルネック」と呼んでいる*3」。

これは、進化が始まったばかりのAIチップの開発者にとっては、極めて大きな問題だ。自動運転車や高度なロボット、的確な診断を下す医療システム、リアルタイムでの自動翻訳機など、AIチップをさらに高性能化して実現したい応用は山積している。「ボトルネックがあるので、これ以上高性能化できません」では済まされないのだ。

[ 脚注 ]

*1
ノイマン型アーキテクチャ: ノイマン型アーキテクチャでは、汎用計算機を、「演算装置」「記憶装置」「制御装置」「入力装置」「出力装置」の5つの機能と、これらの間をつなぐデータ伝送機構で構成する。ノイマン型以前のコンピュータは演算器を配線でつないで計算手順を指定していたため、演算手順を変える度に配線し直す必要があった。これに対しノイマン型は、演算の手順を記したプログラムを記憶装置に格納し、プログラム内の命令を上から順に読み出し、演算装置で実行していく。プログラムの書き換えが容易なので、簡単に演算手順を変更できる。世界最初のノイマン型コンピュータは1949年に英国で開発された「EDSAC」である。現在ノイマン型と呼ばれている構造のアイデアは、ENIACの開発者であるジョン・モークリーとジョン・エッカートによるものというのが事実のようだ。しかし、開発プロジェクト顧問の立場で参加していたノイマンの名前で報告書が執筆されたことから、ノイマン型と呼ばれるようになった。
*2
TPU: TPUとはTensor Processing Unitの略で、Google社が開発したAI関連処理、特に推論処理の高速化に特化して設計されたAIチップの名称。
*3
ノイマン型でも、演算を並列実行すれば高性能化は可能だ。ただし、並列化を推し進めることは、汎用性を損なうことにつながる。本連載でこれまで解説したように、AI関連処理は並列化しやすい処理が多いため、AIチップの高性能化にフォン・ノイマン・ボトルネックは大きな影響を与えないようにも見える。しかし、並列化にだけ頼った高性能化は、素子や配線の数の増大を招いて小型化と低消費電力化が難しくなり、利用シーンが限定されてくる。

Copyright©2011- Tokyo Electron Limited, All Rights Reserved.