メインコンテンツへスキップ

第 1 架 コンピューティング基盤 1 / 45

コンピューターハードウェアの歴史 — CPU・GPU・FPGA・ASIC

フォン・ノイマンとEDVAC、トランジスタ、Cell/B.E.、CPU・GPU・FPGA・ASICへ。PS3/Folding@home、BOINC、ビットコインのマイニングを支えた半導体・企業・供給網を一次資料でたどる。

この記事の出典を確認する(60件)

記事概要

一枚のチップをたどると、宇宙を探した家庭のPC、タンパク質を計算したゲーム機、ビットコインを掘る専用機が一本の歴史でつながります。

理解の手がかり

CPUは少人数の万能料理人、GPUは同じ作業を並べてこなす大厨房、FPGAは厨房そのものを組み替えられる設備、ASICは一品だけを極めた専用機。こう並べると、役割の違いがつかめます。

比喩の限界

実際の性能は回路だけで決まりません。メモリ転送、ソフトウェア、製造プロセス、消費電力、そして解く問題によって変わります。どれか一つが常に最速というわけではありません。

同じ「計算する機械」が、なぜBOINCでは役に立ち、ビットコインのマイニングでは形を変えたのかを説明できるようになります。

用語集を開く
この記事の目次14節読みたい節へ移動する

1計算機史を一本の進化線にしない

図 1 計算機の歴史はCPUからGPU、ASICへ一直線に置き換わった歴史ではない。stored-program設計、transistor、IC、MOS、microprocessor、FPGA、GPU、分散科学計算、Bitcoin ASICという異なる発明が重なり、古い種類も制御・汎用処理・検証という役割を変えて残っている。

CPU、GPU、FPGA、ASICは、古いものから新しいものへ置き換わった四世代ではありません。CPUは複雑な制御と幅広いソフトウェアを扱い、GPUは似た演算を大量にこなして高いスループットを出し、FPGAは使用現場で回路を組み替え、ASICは狭い仕事へ回路を固定します。いまのシステムでも、これらはコントローラ、アクセラレータ、ネットワーク、ストレージと組み合わさって共存しています。

進歩を読む軸は少なくとも六つあります。スイッチの媒体(リレー、真空管、トランジスタ)、一つのチップへの集積、ISAとソフトウェアの互換性、回路を後から組み替えられるか、並列処理の粒度、そして誰が設計・製造・運用するかです。トランジスタ数、クロック、コア数、FLOPS、hash/sは、一つの性能順位へ混ぜられません。

本稿でいうASICは、使用現場で論理機能を書き換えず、特定の用途領域へ最適化した集積回路という操作的な意味です。広い意味ではCPUやGPUも用途を持つICですが、ここでは汎用プロセッサ、再構成できる論理回路、機能を固定したアクセラレータの設計差を説明するために用語を分けます。

2EDVACとフォン・ノイマン — 文書の著者と発明の共同史

1945年、John von Neumann名義の『First Draft of a Report on the EDVAC』は、演算装置、中央制御、メモリ、入力、出力という機能構成を示しました。命令とデータをともに数値としてメモリへ置く電子計算機の論理設計を、この文書が広く流通させます。後世に「von Neumann architecture」と呼ばれる考え方をたどるうえで、重要な資料です。

ただし、von Neumannがプログラム内蔵方式の計算機を一人で発明したわけではありません。First Draftは、ENIACとEDVACに取り組んだMoore Schoolでの共同作業、とりわけJ. Presper Eckert、John Mauchly、Herman Goldstineらとの議論を背景に持ちます。著者欄が一人であることと、発明が誰に帰属するかは別の問題です。

さらに「stored program」は、当時の文書にはない後世の分類語です。配線の変更を減らす設計、書き換え可能なメモリ上でのプログラム実行、命令とデータを同じメモリに置くこと、現代的なコードのモデルは、互いに近いものの完全な同義ではありません。「世界初」を語るなら、Manchester Baby、改造ENIAC、EDSACなど、何を最初と数えるのかを先に定義する必要があります。

3真空管からトランジスタ、集積回路、MOSへ

ENIAC級の真空管式計算機は電子の速さで動きましたが、膨大な真空管、電力、熱、故障、配線空間を必要としました。1947年12月、Bell LabsのJohn BardeenとWalter Brattainは、ゲルマニウムの点接触型トランジスタで増幅作用を実証します。William Shockleyはその研究グループを率い、後に接合型トランジスタを構想しました。三者の寄与を一人へ縮約してはいけません。

1958年にTexas InstrumentsのJack Kilby、1959年にFairchild SemiconductorのRobert Noyceが、それぞれ独立に集積回路への道を開きました。Kilbyの一体化の着想と、Noyceがプレーナプロセスと金属配線を組み合わせて量産への道を開いたことは、別の寄与です。1960年にはBell LabsのMohamed AtallaとDawon KahngがMOSトランジスタを実証し、高密度なデジタル回路の基盤になりました。

集積とは、単に部品を小さくすることではありません。短い配線、少ない接続点、繰り返せるフォトリソグラフィ、一枚のウェハから取れる多数のダイ、パッケージと試験、そして歩留まり。これらが組み合わさってはじめて、複雑なプロセッサを大量生産できる仕組みが成り立ちます。現在のプロセスノード名称に使われるnmは、単一の物理寸法をそのまま示す物差しではありません。

4マイクロプロセッサ — CPUを一つのチップへ、ソフトウェアを世代へ

Intel 4004はBusicomの電卓計画から生まれ、Federico Faggin、Ted Hoff、Stanley Mazor、嶋正利らのチームが1971年に商用化した4ビットCPUです。CPUの主要な機能を一つのチップへ収めた初期の商用マイクロプロセッサとして重要ですが、AL1やMP944などをどう数えるかで「最初」の定義は変わります。IntelがCPUという概念そのものを発明したとか、一人の発明家が4004を作り上げたといった説明は不正確です。

プロセッサの歴史は、チップだけでなくISAの歴史でもあります。IBM System/360は互換性を持つ計算機ファミリーを1964年に示し、Intel 8086から続くx86は長年のソフトウェア資産を抱え、AMD64は32ビットとの連続性を保ったままx86を64ビットへ拡張しました。RISCの研究とArmは、命令と実装を別々に選べる道を開きます。Armの事業は長くアーキテクチャ、プロセッサIP、コンピュートサブシステムのライセンスを中心としてきましたが、2026年3月に初のArm設計量産シリコンであるAGI CPUを発表し、TSMCを製造者として示しました。これは、ArmがすべてのArmベースのチップを自社工場で製造するという意味ではありません。

Mooreの1965年論文は、経済的に最適な集積度が急速に増えていくという観測であり予測でした。自然法則ではありませんし、性能が一定周期で必ず倍増するという保証でもありません。トランジスタを増やしても、メモリの遅延、電力密度、ソフトウェア側の並列性が性能を縛ります。そのため設計は、キャッシュ、SIMD、アウトオブオーダー実行、マルチコア、アクセラレータへと広がっていきました。

5演算器だけでは速くならない — メモリ、データの移動、並列性

図 2 到達可能なthroughputは演算器のpeakだけで決まらない。算術密度が低い領域ではmemory bandwidthとdata movementが上限になり、十分に再利用できる領域で初めてcompute上限へ近づく。これはrooflineの関係を示す概念図で、特定CPUやGPUの実測benchmarkではない。

CPUは命令を解釈し、複雑な分岐を短い遅延で進めます。その内部にも、パイプライン、スーパースカラ実行、分岐予測、SIMD、複数コアといった異なる並列性があります。GPUは多数のスレッドを束ね、待ち時間を別の仕事で隠しながらスループットを高めます。CPUのコアとGPUの実行ユニットを、同じ「コア数」で比較してはいけません。

性能は計算回数だけで決まりません。データがレジスタ、キャッシュ、主メモリ、VRAM、ストレージ、ネットワークのどこにあり、何バイトを動かすかにも左右されます。算術密度が低い仕事はメモリ帯域で頭打ちになり、GPUへ送る転送コストが計算時間の短縮を上回ることもあります。ビットコインのSHA-256は小さな状態に規則的な整数演算を繰り返すため、これらとは別の設計空間にあります。

ベンチマークは、アプリケーション、入力、精度、コンパイラ、ドライバ、メモリ容量、コンセント側で測る消費電力、冷却条件を揃えなければ比較できません。ピークFLOPSは実際のアプリケーションの速度ではなく、hash/sは浮動小数点性能ではありません。どのボトルネックを測った数字なのかを明記することが、ハードウェア史の基本的な資料作法です。

6GPU — グラフィックスパイプラインから汎用並列計算へ

グラフィックスアクセラレータや専用のグラフィックスプロセッサは、1999年より前から存在しました。NVIDIAは1999年、同社が定義した単一チップでの座標変換、ライティング、三角形セットアップ、描画という条件を掲げ、GeForce 256を「world’s first GPU」として宣伝します。これはGPUという製品カテゴリを普及させた重要な出来事ですが、グラフィックスの高速化そのものをNVIDIA一社が発明したという意味ではありません。

プログラマブルシェーダーの発展により、グラフィックス以外のデータ並列な計算をGPUへ移すGPGPUが広がりました。NVIDIAは2006年にCUDAを導入し、Khronosは2008年にOpenCL 1.0を公開しています。通常はCPUが制御の流れ、メモリの確保、カーネルの投入を担い、GPUが並列性の高い部分を処理します。GPUだけが独立してアプリケーション全体を実行するわけではありません。

AMDのGPU系譜には、2006年に買収したATIの技術史があります。現在のAMDはCPU、GPU、アダプティブコンピューティングを設計し、IntelもCPUだけでなく内蔵GPUと単体GPUを提供しています。BOINCがNVIDIA、AMD、IntelのGPUを認識できても、科学プロジェクト側が対応するアプリケーションとドライバの条件を用意しなければ、そのGPUで仕事は動きません。

7FPGAとASIC — 書き換えられる回路、固定する回路

図 3 CPU、GPU、FPGA、ASICの違いは単純な速度順位ではなく、実行modelと変更の単位にある。softwareを替えるCPUとGPU、bitstreamで回路を再構成するFPGA、siliconを再設計するASICでは、汎用性、用途固有実装のNRE・再設計負担、量産時の効率、algorithm変更への耐性が異なる。費用は設計とapplicationに依存し、単純な価格順位ではない。

FPGAは論理ブロックと配線の構成を使用現場で変更でき、ソフトウェアの命令を順に実行するのではなく、目的のデータ経路そのものを回路として組みます。1985年のXilinx XC2064は、初期の商用FPGAを代表する製品です。設計、合成、配置配線、タイミング収束はいずれも難しい作業ですが、製造後にも回路を更新できるため、試作や生産量の少ない用途、遅延の小さいパイプラインに向きます。

ASICは用途を固定する代わりに、不要な命令デコードや汎用の資源を削り、面積、スループット、エネルギーを狭い仕事へ集中させられます。その代償は、高い設計費と検証費、マスク費用、長いリードタイム、そしてアルゴリズムが変わったときの陳腐化です。「ASICは速いGPU」「FPGAは遅いASIC」という関係ではなく、回路をいつ固定するかが違います。

企業の帰属を語るときも、時点を添える必要があります。ビットコインのFPGAマイナーが登場した2011年、XilinxとAlteraは独立した企業でした。AMDがXilinxを買収したのは2022年です。IntelはAlteraを2015年に買収し、2025年9月に持分51%をSilver Lakeへ売却して49%を保持しました。後の親会社へ、過去の発明を遡って帰属させてはいけません。

8Cell Broadband Engine — PS3を科学のアクセラレータへ変えた異種混在マルチコア

図 4 同じ「Cell」という語でも、Cell Broadband EngineはSony・Toshiba・IBMが共同設計したprocessor、NTT DATAのcell computingは分散計算製品・serviceのbrandである。PS3はFolding@home独自基盤へ参加し、GeneはBOINCを組み込んで管理下のLAN PCへjobを配った。名称ではなく技術層、運営主体、端末所有、参加範囲で区別する。

Sony、Toshiba、IBMは2001年、AustinのSTI Design CenterでCell Broadband Engine(Cell/B.E.)の共同設計を始めました。Cell/B.E.は、Power Architecture系のPPEがOS・分岐・仕事の割り当てを制御し、複数のSIMD型SPEがローカルストアとDMAを使ってデータ並列のカーネルを処理する、異種混在のマルチコアです。一般的なCell設計は8基のSPEを持ちますが、PlayStation 3上の科学アプリケーションから使えたSPEは6基でした。チップの一般仕様と、製品から見える資源を同じ数として扱ってはいけません。

Stanford大学のFolding@homeとSony Computer Entertainmentは、2007年3月にPlayStation 3向けのクライアントを公開しました。PS3はFolding@home独自のクライアント・サーバー基盤へ接続し、タンパク質の折りたたみや折りたたみ異常を扱う分子動力学の軌跡を構成する仕事を受け取り、Cell/B.E.で計算して返しました。これはBOINCのプロジェクトではありませんし、PS3のRSXグラフィックスプロセッサが計算したという話でもありません。計算を担ったのはCell/B.E.です。

2009年のIPDPS論文は、当時およそ5万台の稼働中PS3が約1,400 TFLOPSを担い、Folding@home全体の保守的な実アプリケーション推計である約4,800 TFLOPSの大きな部分を占めたと報告しました。Sonyの2008年CSR報告にある累計140万人超の参加やpetaflop到達は、これとは別の尺度です。登録・累計の参加者数、同時に稼働しているホスト数、理論ピーク、実アプリケーション性能を、一つの数へ混ぜてはいけません。

査読論文は、CellのSIMD演算、ローカルストア、DMAを分子動力学へ写すアルゴリズムを示す一方で、メモリ容量、データの移動、適合するアルゴリズムの狭さも示しました。PS3は万能のスーパーコンピュータではありません。適したシミュレーションでは研究基盤を大きく増強しましたが、特定の治療法や発見をPS3単独の成果へ帰属させることもできません。計算のあとには、軌跡の解析、仮説の評価、再現、実験、査読が残ります。

PS3向けクライアントは2012年11月6日まで運用されました。民生機器の均一なハードウェア、世界規模の配備、Sonyによる配布の導線、Stanfordの研究ソフトウェアが結びついた、期間限定の科学装置だったといえます。IBMとToshibaはCellの共同設計者ですが、Folding@homeのクライアントで直接協業したのは、Stanford側のチームとSony Computer Entertainmentです。チップの設計、ゲーム機の運営、研究プロジェクトの功績は、分けて記録します。

9BOINC — 異種のハードウェアを消さずに束ねる

BOINCは科学のアルゴリズムそのものではなく、プロジェクト固有のアプリケーションを多様な端末へ配布するミドルウェアです。プラットフォームはおおむねプロセッサアーキテクチャとOSの組み合わせで、同じ研究アプリケーションにもCPU版、GPU版、OS別、ドライバ別の版があります。スケジューラはplan classと端末の情報を使い、実行できるか、どの程度の速度が見込めるか、CPUをどれだけ補助に使うか、GPUの種別は何かを判断します。

2008年にはGPUGridがCUDAを使い、BOINCはNVIDIA GPUへの対応を告知しました。SETI@homeも同年12月にCUDA版を公開しています。これは、GPUがあらゆる科学計算をCPUより速くしたという意味ではありません。規則的で算術密度の高いカーネルは加速しやすい一方、分岐、巨大なメモリ、ネットワークI/O、移植コスト、倍精度、研究コードの寿命がGPU化を制約します。CPU版が残るのは技術の遅れではなく、ワークロードと参加範囲をどう選ぶかの問題です。

異なるハードウェア、コンパイラ、数値計算ライブラリは、浮動小数点の丸めや演算の順序を変えることがあります。正しいCPUの結果とGPUの結果がビット単位では一致しない場合もあるため、プロジェクトは許容差、アプリケーション固有のバリデータ、homogeneous redundancy、同じ版どうしの比較を使い分けます。ハードウェアの多様性を消すのではなく、メタデータと検証で管理するのがBOINCの設計です。

2005年にNTT DATAが発売したcell computing Geneは、名称にCellを含みますが、Cell/B.E.プロセッサとは無関係です。GeneはBOINC、その他のオープンソースソフトウェア、NTT DATAが開発したソフトウェアを組み合わせ、組織が所有・管理するLAN内のPCへジョブを配布するミドルウェアのパッケージでした。名前が同じというだけで、PS3/Folding@homeとGeneを同じハードウェアの系譜へ置いてはいけません。

10ビットコインのマイニング — CPUから専用のSHA-256パイプラインへ

初期のビットコインクライアントはCPUマイナーを内蔵しており、2010年にはSSE2を使うSHA-256の最適化が共有されました。同じ年にOpenCLのGPUマイナーが公開され、2011年にはXilinx・Altera向けのオープンソースFPGAマイナーが登場します。2013年1月にはCanaanの前身チームがAvalon ASIC群を出荷したと、SEC提出資料に記録されています。これは世代の境目が重なり合う移行であり、すべての参加者が同じ日に次の世代へ移ったわけではありません。

SHA-256dは入力と演算が固定されており、候補となるブロックヘッダーを変えながら、目標値を下回るハッシュを探す反復処理です。GPUは多数の試行を並列に進め、FPGAはハッシュのパイプラインを回路として組み、ASICはさらに制御とデータ経路をSHA-256へ固定しました。収益がハッシュレートと電力・設備費に直接結びつくため、狭い用途への専用化には大きな経済的誘因がありました。

Intelも2022年4月に、SHA-256向けのBlockscale ASICを発表し、チップ仕様として最大580 GH/s、最大26 J/THを掲げました。ただしこれは一つのチップの境界での数字であり、採掘機や施設としての効率ではありません。Intelは2023年4月に製品終了通知を出し、最終注文日を同年10月20日、最終出荷予定日を2024年4月20日としました。参入した企業の大きさと、その事業が続くかどうかは別の話です。

ホワイトペーパーの「one-CPU-one-vote」は2008年時点の計算力を表した歴史的な表現であり、現在のx86 CPU一台に一票を割り当てる規則ではありません。チェーンの選択は、累積されたProof of Workを比較して行います。またプロトコルやソロマイナーが中央のサーバーから仕事を受け取るわけではなく、プールを使う場合にプールがジョブと低難度のシェアを管理します。フルノードはマイナーの機種や企業を信頼せず、ブロックの規則とハッシュを自分で検証します。

11同じシリコン、異なる仕事と検証

同じシリコン、異なる仕事と検証の比較表
観点BOINC / 科学計算Bitcoin mining
問題プロジェクトごとに変わるモデル・探索・解析SHA-256dによる目標値の探索
ハードウェアCPU、GPU、Arm端末などがアプリケーション別に併存現代の競争的な採掘はSHA-256 ASIC中心
出力研究データ。後段の解析や実験が必要な場合もある有効なブロック候補とProof of Work
検証冗長計算、許容差、プロジェクト固有のバリデータハッシュと全ブロック規則を各フルノードが決定的に検証
指標アプリケーション実行時間、FLOPS、結果、クレジットなどhash/s、J/TH、ブロック、プールのシェア
誘因研究への参加、クレジット、共同体新規発行の報酬、トランザクション手数料、プールからの支払い

BOINCのクレジット、WCGのポイント、稼働年数、FLOPS、ビットコインのhash/sは、互いに変換できません。科学アプリケーションのFLOPSからSHA-256のハッシュレートを推定したり、マイナーのTH/sから科学的な有用性を順位づけしたりすれば、演算の意味と単位が失われます。共通しているのは、参加者が所有するハードウェア、電力、冷却、ネットワーク、ソフトウェアを世界規模の計算へ動員したという、制度の外形です。

12一枚のチップの背後にある企業と供給網

図 5 一台のcomputerやminerは一社だけの成果ではない。研究と仕様、ISA・IP・chip設計、EDA、lithography装置、wafer製造、memory、packageとtest、board・電源・冷却、software、運用と検証が連鎖する。企業名は「半導体企業」と一括せず、各層での役割と当時の所有関係に帰属させる。

Intelはx86 CPUなどを設計し、自社の工場を主軸に製造するIDMです。AMDはx86 CPU、GPU、Xilinx由来のFPGA・アダプティブSoCを設計し、NVIDIAはGPUとCUDAのソフトウェアエコシステムを設計します。AMDとNVIDIAは、製造の多くを外部のファウンドリへ委託しています。TSMCは顧客の製品を製造する専業ファウンドリであり、採掘機の設計会社でも、マイニングプールの運営者でもありません。

実物のシステムを動かすには、ISA/IP、アーキテクチャ、RTL、EDA、ウェハ製造、メモリ、パッケージ、試験、基板、電源、ファームウェア、冷却、ネットワーク、施設の運用が必要です。Armはアーキテクチャ/IPを中心に、2026年から自社設計のシリコンへ範囲を広げました。ASMLはリソグラフィ装置、Synopsys・CadenceなどはEDA、TSMC・Samsung・Intelなどはウェハ製造、ASEなどのOSAT企業は組立と試験を担います。同じ「半導体企業」といっても役割は異なり、設計と実際の製造の境界も違います。

ビットコインのASICでは、Canaan、Bitmain、MicroBTなどがチップと採掘機を設計・統合し、ファウンドリやパッケージ・試験の企業へ製造工程を委託します。ビットコインのプロトコル、採掘機のファームウェア、マイニングプール、ASICベンダー、ファウンドリ、採掘施設は、それぞれ別の主体です。BOINCでも、Berkeleyのミドルウェア、各研究プロジェクト、IBM/KrembilによるWCGの運営、参加者の端末、チップベンダーを、一社の功績としてまとめてはいけません。

13効率・電力・環境負荷は境界を明記する

ASICのJ/THには、チップ単体、採掘機のコンセント側の消費電力、施設全体という、少なくとも三つの境界があります。チップ仕様は電源、ファン、コントローラを含みませんし、採掘機の仕様も変圧、ポンプ、建屋の冷却を含みません。温度、電圧、動作周波数、ファームウェア、オーバークロック、稼働率によって実測値は変わります。製品名だけを根拠に効率を引用してはいけません。

BOINCでも「idle hardwareを使うから電力はゼロ」とは言えません。必要なのは、基準となる状態との差である追加分のコンセント側電力、実行時間、成功率、再試行、冷却、そして地域や時間帯ごとの電源構成です。クレジット、FLOPS、累積の稼働時間だけからkWhやCO2を求めることはできません。

運用時の電力と、ウェハ製造、パッケージ、輸送、施設の建設、廃棄を含むライフサイクル全体の影響も分けて考えます。ワットあたりの性能が改善しても、ネットワーク全体のハッシュレートや参加台数が増えれば、総電力は減らない場合があります。効率、総消費、炭素排出、電子廃棄物は、それぞれ別の問いです。

14コンピューター歴史博物館としての読み方

「最初」という語には、何の最初か、どの定義によるのか、誰の主張なのかを添えます。ベンダーの年表、製品資料、SEC提出資料は企業の行動を知る一次資料ですが、同時に自己評価でもあります。Computer History Museum、Smithsonian、原論文、ソースコードと組み合わせ、宣伝上の最初と歴史学上の帰属を分けて扱います。

買収日より前の功績を、現在の親会社へ遡って帰属させません。ATIのGPU史とAMDが企業としてつながるのは2006年から、XilinxとAMDは2022年からです。製品の対応OS、ドライバ、プロジェクトの状況、会社の所有関係は変動する資料として確認日(lastVerified)を付け、1945年の文書や2013年の論文は固定した史料として扱います。

機械を保存するとは、筐体を並べることではありません。回路図、ソースコード、コンパイラ、ドライバ、プロトコル、ベンチマークの条件、電力の境界、組織、失敗した設計、参加者の実践までを関係づけることです。そうして初めて、机上のCPUとGPUがSETI@homeやBOINCを通じて科学装置になり、別の条件のもとでビットコインの公開参加台帳を支えるASIC産業へ分岐した歴史を検証できます。

主な参照元

次に読む

スーパーコンピュータの歴史と役割 — 5年後・10年後の計算基盤約16分
共有

引用情報 / Citation

Title
コンピューターハードウェアの歴史 — CPU・GPU・FPGA・ASIC
Source
ビットコイン図書館 (bitcoin.ne.jp)
Canonical URL
https://bitcoin.ne.jp/learn/computing-hardware
Author
KK siiiiiixth
Topic
computing-hardware
Published
Updated
最終検証 / Last verified
Editorial policy
https://bitcoin.ne.jp/editorial-policy
About
https://bitcoin.ne.jp/about
License
コンテンツ利用条件

運営者が権利を有する記事本文・独自図解・公開データは、引用、要約、索引作成、検索、RAG、機械分析、AIモデルの学習に利用できます。読者に内容を提示する場合は、技術的に可能な範囲で「ビットコイン図書館」と該当するcanonical URLを示してください。