arXiv論文メモ
新着一覧
cs.AR · 査読状況未確認

4ビット整数命令を使うBitNet推論の実装評価

Implementation and Evaluation of BitNet Inference on a CGLA by Signed-Int4 Instructions

Takuto Ando, Yasuhiko Nakashima

この論文をやさしく読む

ひとことで言うと

BitNetの特殊な低ビット演算を、専用回路だけに頼らず、再利用できる4ビット整数命令で実行する方法。

何に役立つ?

低ビットの言語モデルを動かす計算機で、汎用性のある整数命令と専用回路の設計を比較する材料になる。要旨の生成速度は、この実装で測った値である。

この研究の面白いところ

3値の重みを4ビットのレーンに載せ、8ビットの活性値を2つの4ビット部分へ分けて計算する。FPGAの測定値を別の動作周波数へ換算した積の時間と、C++実装で実測したトークン速度を区別して報告している。

どこまで分かった?

0.390ナノ秒という積の時間は145MHzのFPGA測定から840MHzのCGLAへ周波数換算した値である。毎秒2.52トークンは実装の測定値だが、他の装置やモデルとの性能比較は要旨に示されていない。

v1のアブストラクトに基づくAI解説。日本語訳とは別に、用途の解釈を含みます。

アブストラクトの日本語訳

大規模言語モデルの推論では、生成する各トークンについてモデルの重みと中間の活性値を転送する。このため、メモリーとのデータのやり取りとそのエネルギー費用が、出力を順に生成する処理の一部となる。BitNet b1.58は、低ビットの重みを3値で表し、整数の活性値を使う。しかし、その演算は通常の8ビット整数や浮動小数点による行列積とは一致せず、既存のBitNet用アクセラレーターは専用の計算回路で実装している。 著者らは、この演算をCPU-Grounded Linear Array(CGLA)へ割り当てる。CGLAは、明示的なダイレクトメモリーアクセス、局所メモリー、コンパイラーから利用できる再使用可能な整数演算レーンを持つ、プログラム可能な専用半導体である。BitNetだけの専用回路を加える代わりに、再利用できる符号付き4ビット整数の積和演算命令OP_SMA4を追加する。3値の各重みを符号付き4ビットの1レーンに収め、8ビット整数の各活性値は符号付き4ビットの2つの部分に分け、シフトと加算で復元する。145MHzのFPGAでの測定を、28nm製造工程の840MHzのCGLAへ周波数換算すると、符号付き4ビット整数の積1回当たり0.390ナノ秒となった。CGLAへ処理を委ねるBitNetのC++実装では、毎秒2.52トークンの生成速度を測定した。

v1の要旨から自動生成。本文の精読・人による確認は未実施。

初稿
2026-09-23(UTC)
最新改訂
2026-09-23 · v1
査読・掲載
査読状況未確認
arXivで読むPDF

更新履歴

取得できた版を表示。版の更新は査読済みを意味しません。過去版の本文差分は未解析です。

原文の要旨

Large language model (LLM) inference transfers model weights and activations for every generated token, making memory traffic and its energy cost part of the decode path. BitNet b1.58 represents its low-bit weights by ternary values and uses integer activations. However, this arithmetic does not match conventional int8 or floating-point general matrix multiplication, and existing BitNet accelerators implement it in specialized datapaths. We instead map this operation to a CPU-Grounded Linear Array (CGLA), a programmable ASIC with explicit direct memory access, local memories, and reusable compiler-visible integer lanes. The mapping adds OP_SMA4 as a reusable signed-int4 multiply-accumulate instruction rather than a BitNet-only datapath. Each ternary weight occupies one signed 4-bit lane. Each int8 activation is split into two signed-int4 fragments and reconstructed by shift-and-add. Frequency scaling of the 145 MHz FPGA measurement to an 840 MHz 28 nm CGLA achieved 0.390 ns per signed-int4 product. We showed that CGLA-offloaded BitNet C++ execution measures 2.52 tokens/s.

著者のコメント

Accepted as a Regular Paper for the CSA Workshop at CANDAR 2026

arXiv ID: 2609.27453 / 要約の誤りについて