あれこれ備忘録@はてなブログ

勉強したことやニュースや出来事を備忘録として書いていきます

比較的新しいIntel CPUでPuppy Linuxがうまく動かない問題

前の記事にもちょっと書いたが、比較的新しいIntel CPUでは、グラフィック周りで不具合が起きているらしい。

Puppy Linux Discussion Forum :: View topic - HP-X360-I3 Tahr=graphics Slacko=No wireless

うちのPCでもTahrPupで同じような症状になった。

上のPuppy Linuxフォーラムで質問している人はIntel Core i3 5010Uで起きているようだが、うちのマシンはCore i5 5200Uである。

同じBroadwellだと思われる。

そんなに新しくないんだけど・・・。

カーネルがどうやらきちんと新しいIntel HD Graphics(うちのマシンはIntel HD Graphics 5500)に対応していないようだ。

XenialPupだと起動できる。

Ubuntu用のIntelドライバインストーラやアップデーターを試してみたが、ディストリビューションのチェックと思われる項目でエラーが出てインストールできない。

直接、グラフィックと関係がないがマルチタスク動作で動きがおかしくなっているのでいろいろ調べてみたら、CPUの周波数コントロールであるPStateがうまく動いていないらしいこともわかった。

起動オプションにacpi=forceとintel_pstate=disableを追加してみたら、起動してXが立ち上がった直後の不安定さは改善した。

acpi-cpufreqでクロック周波数の制御が行われる。

intel_pstate=no_hwpというオプションもあるようだ。

HardWare controlled P-Stateという機能を無効にするものらしいが、この機能はSkylake以降に搭載されているということで、うちの環境には関係がないので、no_hwpオプションも意味がないだろう。

PStateの不具合は結構あるようでツイッターなどでも探すと(Puppy Linuxではないだろうが)同じような記述がある。

intel_pstateにすると周波数制御の種類がperformanceとpowersaveしかなく、うちのマシンではバッテリー駆動状態だと負荷に関係なくバッテリーの残り残量に合わせてどんどんクロック周波数が落ちていく。

自動的にバッテリー消費を抑えているのだろうが、バッテリーの残りが少ない状態になるとクロック周波数は500MHzにまで低下してしまい、アプリを終了して電源をオフにするのにかえって時間がかかるというおかしなことになっている。

なかなかクセモノだ。

しかし、Intel PStateを無効にすると今度は、負荷がかかったときに動作クロック周波数を一時的に定格よりも引き上げるターボブーストテクノロジー(Intel Turbo Boost Technology)が効かなくなるようだ。

インテル ターボ・ブースト・テクノロジー - Wikipedia

i5-5200Uではベース動作周波数が2.2GHzのところ、ターボブースト時には2.7GHzまで引き上げられる。

これが無効になるのは地味だがちょっと残念。

しかし、安定動作が優先なのは当たり前なのであきらめるしかない。

アイドル状態のクロックや電圧を制御するC-Stateというのもあって、古いCPUではintel_max_cstateというカーネルオプションをつけて安定動作を図る場合もあるようだ。

少しこれで様子を見てみることにする。

グラフィック関係をどうにかできないだろうか・・・。

広告を非表示にする