トピック

「CPUは何でもいい。」は本当か? Intel製CPU進化史と基礎知識

~CPUの役割と高速化のアプローチを知れば、PCの未来が見えてくる!?

Intelの最新プロセッサ、Intel Core i9-10900K。Intelの一般コンシューマ向けプロセッサとしては初めて10コアに到達した

 GPUやSSDの話題が増えてきた昨今のPC市場においても、PCの性能にもっとも大きく影響するのはCPUだ。そのCPUについて知ることは、今使っているPCを使い続けるか否か、新しいPCを購入するならどんな仕様にすればいいのかの参考になるはず。この記事ではPC向けCPUの元祖にして本流であるIntel製品にフォーカスし、CPUの基礎知識を解説していく。

そもそも、CPUって何をしているんだっけ?

 CPU(シーピーユー、Central Processing Unitの略)は、特定の用途に特化せず、さまざまな計算を処理することができるパーツ。アプリケーションの動作の多くの部分をこのCPUが動かしている。ほかにも、おもにグラフィックス処理を行なうGPU(ジーピーユー、Graphics Processing Unit)、AIの処理を専門に行なうNPU(エヌピーユー、Neural Processing Unit)など、複数の種類の処理装置がPCには装備されている。

CPUがデータを処理する基本的な手順は、学生がレポートを作成する作業の流れに似ている

 CPUは“中央演算装置”という訳語があてられるが、人間で言えば頭脳に相当する部分となる。たとえば学生がレポートを書くときを考えてみよう。まずは図書館にいって必要な資料(データ)を探して、それを読んで記憶し、さらにこれを頭の中で整理して、レポートを書いて提出する――という一連の作業を行なうだろう。

 PCでもこの流れは同様で、図書館に相当する“ストレージ”から、資料に相当する“データ”を探してきて、それを一時的にデータを置いておく“メモリ”という場所に読み込む。そしてその読み込んだデータをCPUの内部にある“演算器”という装置を利用して処理して、その加工したデータを、結果としてメモリやストレージに書き込む、という一連の作業を行なっている。その処理が、ナノ秒(10億分の1秒)というものすごく高速な単位で行なわれているのがCPUの基本的な仕組だ。今読者のみなさんがご覧になっているPCの中ではそうした作業が想像もできないような速度で行なわれているのだ。

現代のプロセッサおよびチップセットの構造。ノートPC向けCPUでは、多くの機能が1チップに集約されている

 昔のCPUは、メモリやストレージを接続する「チップセット」というチップ組み合わせて使われることがほとんどだった。しかし、現代のCPUは、かつてのチップセットの機能の多くをCPU自体に取り込んでおり、メモリへの接続を実現するメモリコントローラ、グラフィックスを処理するGPU、ストレージなどを接続するためのPCH(Platform Controller Hub)などを搭載、ノートPC向けのCPUでは、それらの機能を1チップで提供するようになっている(デスクトップPCやゲーミングノートPCなどではPCHの統合は済んでいないので2チップ構成)。

 Intelはさまざまな機能のCPUへの統合を進めており、2018年にリリースした第8世代CoreプロセッサではWi-Fiの機能をCPUに統合。そのおかげでPCメーカーは低コストで、Wi-Fiの機能を実装できるようになっている。しかも、Intelは最新規格にして超高速なWi-Fi 6(IEEE802.11ax)の機能を統合しており、ユーザーは最新のWi-Fi機能を、低コストで活用できる環境が整っている。

最新の無線LAN規格であるWi-Fi 6のRFモジュール。無線LANコントローラ自体はCPU/チップセットに統合されている

 余談だが、「Intel」という社名は「"Int"egrated "el"ectronics」(統合された電子装置)を縮めたものだと信じられている(Intel自身がそういう説明をしているのは聞いたことはないのだが、ブリタニカ辞典にも載っているほどなので、世間ではそう信じられているようだ)。“最初のCPU”とされるIntel 4004を発表した1971年から、約50年になる現在。CPUはさまざまな機能の統合を進めつつ歩みを進め、現在の第10世代Coreプロセッサーなどの最新製品にいたっている。その意味では、「IntelのCPUの歴史は統合の歴史」と言っても過言ではない。

世界初のCPUである「Intel 4004」は1971年に発表された。まもなく生誕50年を迎える

CPUが「速くなる」とは?――Intel CPUの歴史は“高速化”の歴史

 前述したCPUの作業を高速化するには、データの読み出し速度、演算器の処理速度、メモリやストレージへの書き込み速度を向上させることなどが必要になる。「最新のPCではCPUの性能が向上した」よく聞かれるフレーズだが、“CPUが速くなる”とはどんなことが行なわれているのだろうか。

 CPUを速くするためには複数の手法があり、時代時代によってトレンドがある。たとえば、1980年代後半~1990年代前半にはCPUの命令セットアーキテクチャ(Instruction Set Architecture、ソフトウェアがCPUに処理の命令を行なう際の手順)が注目されており、Intelのほか、Motorola、DECなどが競っていた。結果、すでにご存じのようにPCの世界ではIntelの「x86アーキテクチャ」がほぼ100%を占めるにいたっている。

 一方90年代には、CPUの内部の設計・構造を定める“マイクロアーキテクチャ”と、動作周波数に注目が集まっていった。CPUの性能は「CPUの性能=マイクロアーキテクチャの効率性(IPC)×動作周波数」で決まってくるためだ。この2つの要素は、現在でもCPUの性能を左右するものとして改良が続けられている。少し掘り下げてみよう。

(1)マイクロアーキテクチャが進化すれば動作の効率が上がる=高速化する

CPUのマイクロアーキテクチャの歴史

 マイクロアーキテクチャとは、いわば「CPU内部構造の仕様書」である。内部に演算器をいくつ持ち、一時的にデータを保存しておくキャッシュメモリをどれくらい搭載し――といった仕様を決めるマイクロアーキテクチャにより、そのCPUがどれくらい効率よく性能を処理できるかが決まってくるのだ。

 その効率は“IPC(Instruction Per Clock-Cycle)”という指標で示され、IPCが高ければ高いほどCPUの性能も高いことになる。Intelは2006年のCore 2 Duoや2011年のSandy Bridgeこと第2世代Coreプロセッサで大きく処理効率を向上させており、これらのCPUはベストセラーとなった。

(2)動作周波数が上がれば短時間で命令が処理できる=高速化する

 PCのスペック表でよく見かける動作周波数というのは、たとえば1GHz(ギガヘルツ)などの数字で表現されているもので、CPUはその動作周波数に同期して動作している。1GHzであればその同期信号が1秒間に1ギガ(ギガはメガ=100万の1,000倍なので、10億)回発生していることを示している。この動作周波数の数字が大きければ大きいほど、CPUはより短い時間で処理することが可能になるため、性能が向上する。

【お詫びと訂正】初出時に「メガ=10万の1,000倍」としておりましたが、正しくは「メガ=100万の1,000倍」となります。お詫びして訂正させていただきます。

 注意してほしいのは、動作周波数が速くても、前述の効率が悪ければ結果としてトータルの処理はそれほど速くならないということ。両方が進化したCPUは大きな性能進化を遂げることになる。

1999年に発売されたPentium III 1GHz

 実際、90年代にはクロック周波数が急速に引き上げられた。90年代前半の486プロセッサや初代Pentiumプロセッサ世代では33MHz~100MHzという動作周波数のCPUがほとんどだったが、Intelが1999年に発表したPentium IIIプロセッサでは、動作周波数1GHz(1,000MHz)を超える製品が登場。ギガ越えの動作周波数が実現された。

Turbo Boost時に5GHzに達したCore i7-8086K

 クロック向上はその後やや停滞し、2000年代の半ば、Pentium 4世代で2~3GHzのレンジに到達した後はあまり上がらない時期が続いていた。しかし、2014年のCore i7-4790Kで4GHz台に到達、2010年代の後半にはついに5GHzで駆動するCore i7-8086Kが出荷され(限定品の記念モデルではあったが)、現在は、性能や用途(と製品の価格)の違いにより、1GHz~5GHzで動作する製品が流通している。

(3)限界突破のためCPUコアの増加や機能の追加を目指す

 さて、基本的なCPUの性能はマイクロアーキテクチャと動作周波数で決まってくるのだが、前述のように、とくに動作クロックの向上は停滞する時期も生じてしまった。この背景には、CPUが発生する電力、それに比例して熱量が増加してそれを放熱しきれなくなってしまったことがある。従来は新しい製造技術(製造プロセスルール)を導入すると消費電力が下がっていたのだが、もはやそれでは下げるのが難しくなってきたのだ。

 そこで2000年代の後半から現在にいたるまで、1個のCPUにおいて、CPU内の演算器をひとまとめにした“CPUコア”を増やすことで、性能を上げることに積極的に取り組んでいる。かつてのCPUは1つしかコアを持たないシングルコア(1コア)だったのだが、2005年のPentium Dでは2つコアがあるデュアルコア(2コア)、2007年のCore 2 Quadでは4つあるクアッドコア(4コア)――とコア数が増え、コンシューマ向けの最新CPUであるCore i9-10900Kは、1CPU内に10コアを持つにいたっている。また、1つのコアが2つの命令を処理(スレッド)を同時に実行できる「Intel Hyper-Threading Technology」が導入された。コア数やスレッド数の増加は、動画エンコードなどのクリエイティブアプリケーションの高速化に効くが、近年ではゲームなどでも活用されるようになってきた。

 このほか、キャッシュメモリ量の増加、さらにはメモリコントローラやGPUなど従来は別チップとして機能提供された機能をCPUに統合することで性能を上げるアプローチを取っている。このような進化は、製造技術が進化したことにより可能となった。

(4)メモリ空間、命令セットの拡張も続く

メモリのビット数

 また、x86命令も拡張が続けられている。最初のx86は16bit単位までしかアクセスできない仕様になっており、最大64KBのメモリしか扱うことができないようになっていた(実際にはさまざまな手法で、むりやりそれ以上が使えるようにしていたが……)。

 そこで、1985年に導入されたIntel 386プロセッサでそれが32bit(4GB)に拡張され、x86はその後IA-32(Intel Architecture 32)と総称されるようになった。その後、2004年に発表されたのがそのIA-32を拡張して64bit単位でメモリにアクセスできるようにしたIntel 64(マイクロソフトなどは「x64」と呼んでいる)で、現在出荷されているIntelのPC向けCPUはほぼすべてこのIntel 64対応のCPUとなっている。

 また、ISA(命令セット・アーキテクチャ)の拡張も、近年では再び注目されている。90年代の半ばにはMMX、SSE(Streaming SIMD Extensions)と言った、科学演算やAIなどで使われる浮動小数点演算を効率よく演算する命令が導入され、10年代にはそれらをさらに強化したAVX(Advanced Vector Extensions)が導入されるなど現在も拡張が続いている。

(5)CPUとメモリの階層――演算以外でもPCを高速化しているCPU

 このように、CPUの性能はじょじょに引き上げられてきており、現在のPC用のCPU性能は30年前のスーパーコンピュータの性能をはるかに凌駕している。

 しかし、PCの性能を引き上げているのはCPUの性能が向上したからだけでなく、メモリやストレージといった周辺部分も高速化されているからだ。すでに説明したとおり、PCはストレージからデータを読み込んで、データをメモリやキャッシュに展開して、CPUの内部にある演算器を利用して演算して、その結果をメモリやストレージに書き込むという一連の動作を行なっている。もし、ストレージにおいてあるデータを、メモリやキャッシュに読み込むのに時間がかかると、CPUコアはその間処理を停止しないといけないので、前出のIPC(1クロックサイクルに実行できる命令数)が減り、CPUの処理能力は低下することになる。

現在のPCで一般的な「メモリ階層」という仕組。超高速なメモリから大容量のフラッシュメモリまでを、階層的に積み上げて“処理速度”と“コスト”の最適化を図る。最近では、メインメモリとストレージの間を埋めるSCMである「Optane Memory」が話題に

 このため、現代のPCは、複数のメモリ階層という仕組を採用している。一番CPUに近いところ、と言うよりCPUの内部には、キャッシュメモリと呼ばれるメモリがある。このキャッシュメモリは3階層になっており、L1(Level 1、1次)キャッシュ、L2(Level 2、2次)キャッシュがCPUコアの内部にあり、L3(Level 3、3次)キャッシュないしはLLC(Last Level Cache)と呼ばれる大容量のキャッシュをCPU全体で共有している。このキャッシュはCPUと同じ動作周波数で動作しているので、データを最高速で読み込むことができる。

 CPUが必要としているデータがキャッシュにない場合には、メインメモリ、そしてメインメモリにもないときにはストレージから読み込んでくることになる。以前はストレージにはHDD(Hard Disk Drive)と呼ばれる磁気ディスクが利用されていたのだが、HDDは大容量のデータを保存できることはよいのだが、データの読み出し速度はメモリに比べて遅く、PCの性能が上がらない原因になっていた。そこで、2000年代後半からPCで採用が始まったのが、SSD(Solid State Drive)だ。

IntelはCPUだけでなく、SSD(左)やSCM(右)の発展にも貢献。ストレージの高速化とメモリ階層の強化により、PC全体のパフォーマンス向上を進めている

 SSDは記録媒体として半導体ベースのフラッシュメモリ(メインメモリに使われるDRAMとは異なり、電力が供給されていなくても内容が保持されるメモリのこと)を利用しており、HDDよりも高速にデータの読み書きができるようになっている。さらに近年導入され始めたのがSCM(Storage Class Memory)と呼ばれる新しい形のフラッシュメモリで、メインメモリに採用されるDRAM級の性能を実現しながら容量はSSD並みに大容量を実現しており、Intelは「Optane Memory」と呼ばれる製品を導入し、PC全体の性能をさらに引き上げている。CPUと密接にかかわるメモリ~ストレージ周辺も底上げしていくことで、CPU自体の性能を高めていくアプローチを自社の技術で実現できることから、Optaneはゲームチェンジャーになるなり得る新技術とも言えるだろう。

セキュリティ、省電力……Intel CPUは時代に合わせて進化し、PCは変わっていく

Project Athenaに対応したノートPC。ノートPC、2in1タブレットがよりモダンなデザインに進化する

 近年ではCPUに求められるのは、速度面の性能だけでなく、ノートPCに搭載する際の省電力性能、高いセキュリティ性や管理性能へのニーズも増大している。

 現在のPCの市場シェアの大多数を占めているのが、ビジネスや文教でも使われるようなノートPCだ。こうしたノートPCで重要になるのは、長いバッテリ駆動時間を実現するような省電力性能だ。Intelはいち早くノートPC向けのCPUに、スマートフォンに導入されているようなネットワークに接続した状態で待機状態にする機能を搭載したり、ファンレスのタブレットPCに搭載できるような低い消費電力のモデルを用意したりしており、タブレットとクラムシェル型PCの2つの使い方ができる2in1型デバイスの取り組みを行なってきている。昨年からは「Project Athena」と呼ばれるノートPC/2in1型デバイスの近代化の取り組みも行なっており、今後より近代的なデザインを採用したノートPCや2in1型デバイスが増えていく見通しだ。

 また、テレワークやリモートワークと呼ばれるような企業や学校の外でPCを使うときに必要となる高いセキュリティ性と言える。Intelが提供している「vProプラットフォーム」は、CPUに内蔵されているGPUを利用したウイルス検出機能や、遠隔地にあるPCを簡単に管理できる機能などが用意されており、テレワークやリモートワークでも安心してPCを従業員や学生に使ってもらう可能なソリューションを提供している。

 このように、IntelはPC向けのCPUを、さまざまな手法を用いて処理能力を向上させてきている。また、SSDやOptaneのようなSCMも投入して、メモリ階層を改良することで、PC全体の処理能力を引き上げる取り組みを行なっているほか、ソフトウェアの観点からもさまざまな拡張を行なってきている。

性能とアプリケーションの循環モデル

 なぜ、IntelというCPUメーカーはこのようにCPUの性能を強化しているのだろうか? それは、言ってみればそれがPCの進化の歴史だからだ。CPUの性能が引き上げられると、それを使って何か新しいことをやろうというソフトウェア開発者が出てくる。そうしたソフトウェア開発者はその余剰性能を使って新しいアプリケーションを開発する。そうしたアプリケーションをユーザーがたくさん使い出すと、今度はCPUの性能が足りなくなってくるので、新しいPCが欲しくなる――PCの歴史というのは常にそうしたサイクルがグルグル回っていて、それが好循環となり産業が大きくなり、登場から30年経ってもビジネスシーンの中心にあるデバイスという変わらない位置を占め続けている。

 今後も、ソフトウェア開発者は新しいアプリケーションを「発明」し、ユーザーに提供していくことになるだろう。すでに、AIを利用したアプリケーションの提供も始まっており、PCでもそうしたアプリケーションが今後どんどん増えていくことになる。そうしたPCでは、さらなる処理能力が必要になることは明白で、今後もCPUの性能向上は続いていくだろう。

CESで公開された次世代CPU「Tiger Lake」

 Intelはすでに、今年1月にラスベガスで開催された「CES 2020」の記者会見において、次世代CPU「Tiger Lake」(タイガーレイク)の情報を明らかにしている。Tiger LakeではIntelが新規開発した「Xe」(エックスイー)というGPUが内蔵されており、現行製品に比較して2倍のGPU性能を実現すると説明しているなど、さらにCPUの性能を引き上げる計画だ。そうなると、さらに新しいAIを利用したアプリケーションなどの登場が期待できる。また出荷状況も、上位モデルを中心に市場の需要を満たしてきているようである。今後もCPUを中心に、PCは進化を続けていくだろう。