コプロセッサ【co-processor】

概要

コプロセッサとは、コンピュータの内部でCPUの処理を補助するために用いられる、特定用途に特化した補助プロセッサの総称。汎用処理を担うCPUの負荷を分散し、システム全体のスループットを高める目的で設計・実装される。
コプロセッサのイメージ画像

コンピュータの中核であるCPUは多様な処理をこなせる汎用装置だが、あらゆる処理が集中するため性能上のボトルネックになりやすい。そこで、特定分野の処理のみを高速・効率的にこなす専用回路をCPUと並列に動作させる設計が考案された。このようなCPUの指示下で特定処理を分担するプロセッサをコプロセッサと呼ぶ。

初期の実装例としてよく知られるのが、浮動小数点演算に特化した「FPU」(Floating-point Processing Unit)である。IntelのCPU「8086」に対する「8087」のように、かつてはマザーボード上に別チップとして実装されていた。その後、CPUの高集積化が進み、FPUの機能はCPUコア内部に取り込まれたため、単体のFPUチップはほぼ姿を消した。

現在も広く使われるコプロセッサの代表がGPUGraphics Processing Unit)である。もともと画面描画および3Dグラフィックス演算の負荷をCPUから肩代わりする目的で発展したが、並列演算能力の高さから機械学習や科学技術計算、暗号通貨マイニングなどに幅広く転用されている。また、信号処理に特化した「DSP」(Digital Signal Processor)はスマートフォンの音声処理やノイズキャンセリングに用いられ、セキュリティ処理を担う「TPM」(Trusted Platform Module)は暗号鍵の管理や安全な起動検証を受け持つ。

AI処理需要の高まりを背景に、ニューラルネットワークの推論・学習に特化した「NPU」(Neural Processing Unit)を搭載するSoCも増えており、米アップル(Apple)のMシリーズやAシリーズに内蔵される「Neural Engine」や米クアルコム(Qualcomm)社の「Hexagon NPU」などがよく知られる。サーバ向けNICに組み込まれたオフロードエンジンもコプロセッサの一形態で、TCP/IP処理や暗号化CPUに代わって処理する。

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。