このページの本文へ

ロードマップでわかる!当世プロセッサー事情 第471回

いまさら聞けないIT用語集 TDPってなに? 消費電力じゃないの?

2018年08月13日 12時00分更新

文● 大原雄介(http://www.yusuke-ohara.com/) 編集●北村/ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

Turbo機能の実装で
TDPと消費電力に乖離が生じる

 K6やPentium Proの世代までは、おおむね「消費電力≒TDP」の図式が成立したし、この後もしばらくはあまり大きな違いがないまま推移した。

 このあたりがずれ始めるのは、インテルはPentium 4、AMDはFXの時代からである。どちらもIPC(Instruction per Clock)はそこそこで、動作周波数を思いっきり引き上げる方向のプロセッサーだ。必然的に消費電力も増えることになったのだが、逆にこれらのプロセッサーは負荷がかかっている時とかかっていない時で、消費電力の差が非常に大きいという特徴を持つ。

 この結果、下図のように温度と消費電力の間に明確なずれが生じ始めるようになった。 消費電力が急に上がっても、温度が上昇するまでに若干(数ミリ秒だが)のずれが生じるようになったわけだ。つまり、温度は95W相当であっても、消費電力そのものは110Wくらいあるというケースがしばしば出るようになってきた。

Pentium 4、AMD FXの時代から、CPUの発熱と消費電力の間に明確なずれが生じるようになる

 この傾向はその後インテルやAMDが、一時的に動作周波数を引き上げるTurbo機能を実装することで、さらに顕著になった。

 図で言えば、緑の破線で囲んだあたりがこれに近い。非常に短い時間だけ動作周波数を引き上げることで、消費電力もこれに応じて急激に増えるが、発熱が増えるのはワンテンポ遅れてからとなる。その際に、急速に消費電力が下がれば、つまりTurbo動作が一瞬で終われば、発熱はそれほど増えないことになる。

 このあたりになって、いわゆる消費電力とTDPは大きく乖離することになった。もちろん、動作周波数をいっさい変えずにひたすらフル回転させる状態、たとえば全コアを使ってのレンダリングやエンコード、オンプレミスの企業内サーバーの類、あるいは長時間を要する科学技術計算などの場合には、消費電力とTDPがほぼ一致する。

 また、そもそもTDPが低い環境、インテルで言えばCore m製品などがこれに該当するが、この場合も動作周波数を変化させるといっても、そもそも熱的なマージンが非常に小さいので、消費電力とTDPの乖離がそれほど大きくできない。それもあって、やはりTDPと消費電力の差はそう大きくない。

 問題は特にデスクトップPCなどで、TDPと消費電力の乖離は非常に大きなものになっている。たとえば先のCore i7-8700Kの場合。定格(Processor Base Frequency)は3.7GHzとなっており、Max Turbo Frequencyが1GHzアップの4.7GHzである。

 TDPは95Wだが、このTDPの定義はインテルによれば“Thermal Design Power (TDP) represents the average power, in watts, the processor dissipates when operating at Base Frequency with all cores active under an Intel-defined, high-complexity workload.”となっている。

 ラフに訳せば「TDPとは平均的な消費電力、つまりBase Frequencyですべてのコアが稼動している状態で、インテルが定義する複雑なワークロードを実行した場合にプロセッサーが消費する電力をWで表現している」というあたり。

 要するに3.7GHzで全コアが動いている状態での消費電力に相当するものがTDPであり、Turboがかかった状態では一時的にこれを超える場合が当然ありうる。この結果として、設計者に対してはTDPとは別に、電源設計のガイドラインが示されており、こちらで最大消費電力が推察できるようになっている。

 Core i7-8700Kの場合、データシートによればプロセッサーに対して最大138Aを流せるようにしておく必要があるとされる。

Core i7-8700Kのデータシート。赤枠は筆者が追加。厳密に言えばこれはCPUコアに供給する電流値であって、他にコア以外の部分に供給する分もあるので、トータルではもっと多くなる

 では、電流は最大138Aだとして電圧は? というと、別のところに記載があるのだが、Sシリーズの場合には最大1.54V、典型値だと1.05Vとなっており、1.05×138=144.9Wというおそろしい数字が出てくる。

 もちろんこれは一瞬の話であって、常時この消費電力になることはありえない。MAXはあくまでも仕様上の最大値であって、実際にはここまで行くことはまずないのだが、95Wより多くなるのは日常茶飯事であり、マザーボード設計者は最大145Wに備える必要があるわけだ。

 このあたりの事情はAMDも同じである。AMDはRyzenからXFR(Extended Frequency Range)という、さらに動作周波数を引き上げる仕組みが入ったので、より乖離が大きくなったというべきだろう。

 ただ、発熱が多くなって熱的なマージンが減ってくると、動作周波数をそうそうあげられなくなるので、長期的に見れば消費電力とTDPは近づいてくる。その意味では、「消費電力≒TDP」の図式はそう外れてはいないのだが、現実的には「消費電力≒TDP+α」くらいに考えておくのが無難であろう。

※お詫びと訂正:記事初出時、消費電力と温度に関する記述で、誤解を招く表現がありました。記事を訂正してお詫びします。(2019年2月28日)

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

最新記事

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン