CosmosBlueのブログ

日々のよもやま話を徒然と

続・NUC13 ANHi3 Cooling設定に悩む

前回NUC13 ANHi3で快適静音クーリング設定を目指して、一通りの解を得たのですが、もう少しハイパフォーマンスにしても大丈夫かなと思い、設定を大幅に変更してみました。前回記事への追記が多く見づらくなってきたので、ハイパフォーマンス設定部分をこちらに切り出します。

で、前回追記で既存保有機であるNUC11 PAHi3のクーリング設定(プリセット「Balance」)を確認してみたのがこちらです。NUC13 ANHi3とはTDPが異なるためPL1, PL2がかなり大きいですが、Minimum Duty Cycle35%を64℃まで引っ張っているのが分かりました。

  • ※ NUC11 PAHi3 Setting (Preset "Balance")
  • Package Power Limit 1:30W
  • Package Power Limit 2:64W
  • Package Power Time Window:28s
  • Fan off Capability:Enable
  • Primary Temperature Sensor:CPU
  • Minimum Temperature:64
  • Fan Cut-off Temperature:30
  • Minimum Duty Cycle:35
  • Duty Cycle Increment:2

NUC11 PAHi3のアイドル時ファンは1,880~1,920rpmあたりを行ったり来たりしていました。同じrpmが同じ風量とは言い切れないのですが、NUC13 ANHi3で1,900~1,950rmpは39%にあたります。これを参考に、以下のような、もう少しハイパフォーマンスを求めた値に設定変更してみます。

  • ※ NUC13 ANHi3 Setting ( Custom )
  • Package Power Limit 1:20
  • Package Power Limit 2:28
  • Package Power Time Window:28
  • Fan off Capability:Disable
  • Primary Temperature Sensor:CPU
  • Secondary Temperature Sensor:CPU Voltage Regulator
  • Maximum Temperature:90
  • Minimum Temperature:64
  • Fan Cut-off Temperature Offset:20 (ignore)
  • Minimum Duty Cycle:39
  • Duty Cycle Increment:2
  • Sample Period:1
  • Ramp Down Rate:25%

上記の設定で、とある一日の温度をモニタリングしてみました。何かテストをしたという訳ではなく、2024年1月15日の9:00から23:00まで日常用途で使ったものですので、意味があるのはMax値だけです。

ハイパフォーマンス設定のHWMonitor記録

ファンを左右するCPU Temperatureは73℃で若干高め程度でも、コアのデジタルサーマルセンサーは82℃まで行っています。ほぼ一瞬だとは思いますが、どれくらいの時間で何回くらいあったのかは気になるところです。音は全く気にならなかったです。

さて、今までベンチマークはいたずらにCPUを痛めそうなので敬遠してきましたが、今回はCinebench 2024をかけてみることにしました。継続的な負荷でいったいどの程度の高温域に滞留するのかを知るためです。

まず室温21℃でCinebench 2024のMulti Coreを走行させた結果です。

NUC13ANHi3 Cinebench 2024 Mulit-Core Result

皆さん土俵を合わせるためにCinebench R23を使うケースが多いので、Cinebench 2024の"298pts"がいかほどの成績かはよく分かりません。ちなみにNUC11PAHi3は"163pts"でした(BIOSデフォルト、Coolingはプリセット「Balance」の値)。

ここでは性能評価は置いておき(とは言っても11世代より高性能で良かったです)、温度の結果を見ましょう。こちらです。

Cinebench 2024 HWMonitor Result

このキャプチャで意味があるのはMax値だけです。ベンチ中の概要をお伝えしますと、Coreのデジタルサーマルセンサー値はほぼ74℃~77℃の範囲で瞬間最大が88℃、基板のCPUセンサー値は75℃が大半の時間を占めて瞬間最大は85℃、ファン回転数は2,930rpmでの動作が最も時間を占めて瞬間最大は3,291rpmでした。

Core Tempの結果もほぼ同様です。

Cinebench 2024 Core Temp Result

Tj. Max(サーマルスロットリングが動作する温度)が100℃ですが、瞬間最大温度はまったくそこまでは達していません。IA CoreとPackageのWattsをずっと見ていましたが、20Wでの動作をなんとか達成しようとしてWattsオーバーをカットしている様がよく見て取れました。瞬間最大値は最初にTurbo Boostが28秒効くところで記録しているように思います。つまりCPUへの供給電力がある時点(Package Power Time Windowが終わる時点)で頭打ちになるため、その後はクロックが上がりきらず、本来の性能(Max Turbo状態)より低下した状態で推移している、すなわちそこで高温化が止まるのだと思われます。

こう見ると、日常使いでは50℃台平均(瞬間最高が70℃台)、高負荷が10分続く環境でも70℃台平均(瞬間最高が80℃台)となり、このクーリング設定でも日常的にCPUを痛めつけることは無いように思います。瞬間最大が80℃台後半はイヤだという場合はPackage Power Time Windowにまだ検討の余地があります。

ただ、2,500rpmを超えるともはや静音のレベルではありません、うるさいです。ベンチマーク中の最頻値2,930rpmはそりゃもう轟音でした。結局手を緩めるとすぐに温度上昇するので82℃くらいの回転数から降下できないのですね、おそらくは。これはRamp Down Rateを低くしているための効果かと思います。逆に音で高温になっているのに気付くというメリットはありますが。

しかし問題は、自分の利用環境でそこまでの負荷状態に通常なるか?ということであって、うるさいファンに耐えるという課題を抱えている訳ではありません。いざ、のっぴきならない状況になってしまった場合でも黄色信号で済む、という安心感の上で利用できるパフォーマンスというのは魅力でもあります。

さて、ここまで「低温静音なるべく高性能」設定と「ハイパフォーマンスなるべく低温静音設定」をやってみました。みなさんはどちら派でしょうか。

 


 

# なぜか終始 P-Core#1君はクールなんですよね、というかCPU使用率は#0とほぼ同じですし、HWiNFOで見ても平均温度はそんなに差は無いんですよね。なのでクーリングの偏りというのは無いと思うんですね。しかし、Max値に記録される最大瞬間温度はいつもP-Core #1の方が10℃くらいP-Core #0より低いんですよ。ダイのレイアウト(本物か分からないけど)を探して見てみたのですが、P-Core、E-Core共に配置はシンメトリーで、隣り合うチップは#0も#1も同じに見えました(どちらかがPCIに近いとかGPUに近いとかではなく)。NUC11では2コアがほぼ同じMax温度でした。

「まあ、気にすんな」というのが大方の意見だと思いますが(気になる~)。

2024/3/2追記:

P-Core#0とP-Core#1の温度差はどうやら「熱しやすい13世代 + Hyper Threadingの特性」に起因するみたいです。ざっくり言うと、P-Core#0のスレッドである論理のCPU0とCPU1が埋まり、CPU2とCPU3のどちらかに余裕がある状態が維持されると、温度はP-Core#0の方が高くなる(バーストモード区間なら尚更)という理屈です。

で決定的な原因、実はHWMonitorやHWiNFOのようなモニタリングソフト自身でした。これらはCPU0に乗り、秒間隔でモニタリング負荷をかけています。つまりP-Core#0はP-Core#1より余計な負荷が常時かかっています。

そこで、タスクマネージャの「関係の設定」でこれらモニタリングソフトはE-Core(CPU4~CPU7)しか使えないようにすると、P-Core#0とP-Core#1は平均値もMax値もほぼ同温で推移するようになります(Hyper Threading切らなくて大丈夫です)。

温度を見るためのソフトで温度の偏りが生まれていたんですね。DTSのキャリブレーションがおかしいとか、そういう訳ではなかったようで良かったです。

 

という訳で、要約や推測ではなくHWiNFO64で出力したログからグラフを起こしてみました。まずCPU温度と電力の関係です。E-CoreはP-Core#0とP-Core#1の間に収まっていて、そのせいでグラフが非常に見にくくなるのでE-Coreのグラフはカットしています(とは言えE-Coreも気になる方には4コア揃って安定の71℃平均とお伝えしておきます)。

CINEBENCH 2024中のP-Core温度とPackage電力の推移

P-Core#0とP-Core#1の温度に常に5~6℃程度の差があることを除いては、CPU Packageとしてはものすごく律儀にPL1とPL2が守られているのが見て取れます。

ベンチマーク開始からキッチリ28秒間はPL1時間(Package Power Time Window)が有効になり、PL2の28Wで電力はカットされています。その後はPL1の20Wを堅守しようと頑張っています。ハッキリ見えてスゴイですこれ。

また、この間のCPUファンの回転数推移は以下になります。

CINEBENCH 2024中のCPUファン回転数推移

ピークはCPUがTurbo Boostで83℃を記録した序盤の3,291RPMで、その後は平均で2,892RPMとなっています。2,892からMinimum Duty Cycleの1,950を引くと942なので、1%みなし50rpmで計算すると+19%となります。64℃から温度毎に2%増加なので約9.5℃上昇、つまりCPUファンの数値から見た場合、73.5℃がベンチマーク中の平均CPU温度となっているはずです。実際にCore温度のログで計算するとP-Core#0総平均が73℃、P-Core#1総平均が68℃となっていました。辻褄が合って良かったです。

次にPackage Power Time Windowで設定するPL1時間(バーストモード)について見てみます。開始から33秒までの部分拡大グラフが以下です。

CINEBENCH 2024 開始から33秒までの温度と電力


このグラフの線形を見るに、供給WattsをP-Core#0とP-Core#1で配分する中で、ややP-Core#0が多めにガメている(P-Core#0に多くのオーダーが行っている?)ように見えますね。

また、このグラフからは、もしバーストモードでも70℃を超えたくないのであれば、PL2を23W以下、Package Power Time Windowを8秒以下にすべし、ということが分かります。さらに、80℃を超えたくないのであれば、PL2を28W以下(今回設定ですね)、Package Power Time Windowを22秒以下にすべし、ということも分かりました。

いずれも毎回同じように推移する訳ではなく、高いベース温度から始まればターゲットを簡単に超えてしまうでしょう。そのためのバッファを考慮するともう少し低い値にする必要があるかもしれませんね。

連続する一つのセッションで瞬発力を出すなら8秒でも良い気がしますね。CINEBENCHのように20分近く高負荷を続けるものに対して最初の28秒だけダッシュしてもほとんど効果ないですし、やはりバーストモードは重たいアプリの起動等をサポートする時間分あれば良い気もしてきます。

次回「完・NUC13 ANHi3 Cooling設定に悩む」でこのクーリング課題を完結します。

 

 

※この記事はBIOSの操作を推奨するものではありません。古くからBIOSの編集・変更にはリスクが伴うことは知られています。また、クーリング設定をプリセットから変更した時点でクーリングの責任はユーザーに移ります。それが原因でNUCが故障した場合はIntelのWarrantyが効かなくなる場合があることをご承知ください。

ご自身のPCをご自身の責任でいじられることは何の問題もありませんが、結果については常に自己責任であることを認識して頂ければと思います。この記事によって被ったあらゆる損害についてブログ主は免責とさせて頂きます。