2026年11月15日(日) 記事を探す決算カレンダー広告掲載このサイトについて
トップ › 仕組み
仕組み

インメモリ演算とは 電流の足し合わせで計算する方式、IBMの試作は電力効率14倍

インメモリ演算は、メモリの素子そのものを使って掛け算と足し算を行う方式です。IBMは2023年8月、1チップに3,500万個の相変化メモリの素子を並べた試作で、音声の文字起こしの電力の効率が同等の方式の約14倍になったと発表しました。

ポイント
  • インメモリ演算は、計算の回路とメモリを分けず、メモリの素子の中で計算を済ませる方式です。
  • 重みを素子の電気の通しやすさとして記録し、電圧をかけて流れる電流の合計で、掛け算と足し算を一度に行います。
  • IBMの試作チップは、1個に3,500万個の相変化メモリの素子を持ち、約1,700万個の重みを置けます。
  • 数値が連続したアナログの値になるため、素子のばらつきや精度の確保が課題です。

AIの計算の大半は、たくさんの数を掛けて足し合わせる「積和」の計算です。今の半導体は、重みをメモリから計算の回路に運んでから積和を行います。インメモリ演算は、重みを置いた場所で、そのまま積和を済ませてしまう方式です。重みを運ぶ必要がなくなります。

電流で計算する

代表的な方式は、電気の通しやすさを変えられる素子を、碁盤の目のように並べるものです。それぞれの素子に、モデルの重みを「電気の通しやすさ」として記録します。

横の線に、入力の値に応じた電圧をかけます。素子を流れる電流は、電圧と通しやすさの掛け算になります。縦の線には、その列の素子の電流が集まって足し合わされます。縦の線の電流を読めば、積和の答えが一度に出ます。何百もの掛け算と足し算が、電流の物理的な性質だけで同時に済むわけです。

答えはアナログの電流なので、読み取りの回路でデジタルの値に戻します。この変換の回路が、チップの面積と電力のかなりの部分を占めます。

IBMの試作

IBMの研究所は2023年8月23日、相変化メモリを使ったアナログのAIチップの成果を英科学誌ネイチャーに発表しました。相変化メモリは、材料を結晶の状態とガラスのような状態の間で変え、電気の通しやすさを変える素子です。

IBMのアナログのインメモリ演算チップ(IBMの発表から)
項目数字
1チップの相変化メモリの素子3,500万個
1チップに置ける重み約1,700万個
音声の文字起こしの試験で使ったチップ5個
同 重み/素子4,500万個/1億4,000万個
音声の文字起こしの電力の効率同等の方式の約14倍(推定)
キーワード検出の速さ同じ分類の最高記録の約7倍

キーワード検出の比較には、AIの性能の共通の試験MLPerfのデータを使いました。音声の文字起こしの正確さは、デジタルの方式に近い水準でした。

ニアメモリ演算との違い

ニアメモリ演算は、計算の回路をメモリのそばに置きます。計算そのものはデジタルの回路で行います。SKハイニックスのGDDR6-AiMや、IBMのデジタルの試作チップNorthPoleがこちらです。

インメモリ演算は、メモリの素子が計算の一部を兼ねる点が違います。電力の節約は大きくなりうる一方、素子ごとの通しやすさのばらつきや、時間とともに値がずれる現象が精度に響きます。大きな言語モデルは重みが数千億個あり、1チップ約1,700万個の規模とは桁が違います。今のところ、小さなモデルを端末側で動かす用途の研究が中心です。

素子には、相変化メモリのほか、抵抗変化メモリ(ReRAM)、磁気メモリ(MRAM)、フラッシュメモリ、SRAMを使う研究があります。SRAMを使う場合は、デジタルの回路で積和を行う方式も多く試されています。

関連する用語

  • 積和演算:掛け算と足し算を組にした、AIの計算の基本の単位。
  • 相変化メモリ:材料の状態の変化で電気の通しやすさを変える素子。
  • ニアメモリ演算:計算の回路をメモリの近くに置く方式。
  • 量子化:数値の桁を減らす方法。アナログの方式では精度の確保と表裏の関係にある。

IBMの試作は、キーワード検出と音声の文字起こしの2つの課題で評価されました。

この記事は公開資料をもとに作成しています。売買をすすめるものではありません。誤りを見つけたら訂正します(編集方針)。

関連する記事