Linuxでの温度とか電圧とかそのへん

構成はこのへん。CentOS 5.1 x86_64くらいだったはず。

CentOS 5.1 の今のkernelでは、まだRTL8111Bのドライバが入っていない。おかげで、前回手動でドライバ入れてたけど、kernelをyumでアップデートするとまたRTL8111Bを見失ってくれる。モニタもキーボードもマウスもつながずリモートで扱う鯖とする予定なので、これでは困る。yum install kernel-headers でヘッダ入れ、REALTEK提供のソースの r8168-8.005.00/src/Makefile にて KVER をターゲットのバージョンに書き直し、おもむろに make clean; all; install し、"/lib/modules/$(version)/kernel/drivers/net/r8168.ko" にモジュールが入ったことを確認し、depmod -a $(version) して再起動すればOK(のはず)。起動したまま組み込むなら、insmod r8168.ko しとけばOKのはず。バージョンをつけずに "depmod -a " した場合現在起動中のバージョンに対して再構成されるので、kernel バージョンアップしたい場合は明示的にバージョン指定しないといけなさそうげ。

smartd を使えば、温度を含むHDDのSMART情報を引き出せるはず。ただ、SATAのAHCI環境なのが災いしてなのか、どうもうまく動いてくれない。/etc/smartd.conf に "/dev/sda -d ata -H -m root " とか書くととりあえず認識してはくれているものの、温度変更通知が /var/log/message あたりにあがってこない。"/usr/sbin/smartctl -a /dev/sda -d ata" しても、 "194 Temperature_Celsius"が常に30であるあたり、実は HTS541612J9SA00 が温度通知に対応してないだけなのかもしれない。

lm_sensors を使えば、CPUの温度を取得できるらしい。ググりまくりながらも、yum install lm_sensors して、sensors_detect して、適当に i2c-dev とか設定しまくってみるも、"sensors" とすると "General parse error" と怒られる。とある人のメモによると、kernelのk8tempドライバ(v2.6.19以上?)と lm_sensors 2.10.1 以上が必要らしい。CentOSのyumでは今のとこ lm_sensors-2.10.0-3.1 が入ってくる。個別に対応するのがめんどくさいので、CentOSで対応してくれるのを待つことにする。

cpufreqとか使えば電圧・周波数の制御ができるらしい。最初 cpuspeed とかでやるのかなと思って調べまくってると、どうも cpufreq_ondemandとかいう kernel レベルの制御機構があるらしい。dmesgで "Powernow-k8" とか見えれば組み込まれているはず。/sys/devices/system/cpu/cpu0/cpufreq/ 以下をいろいろ見ると kernel設定値が見える。yum install cpufreq-utils しとけば、cpufreq-set でいくつか設定値を変更できるらしい。

ただ、Powernow-k8のモジュールでは現在は電圧までは制御できない。そこを無理矢理電圧まで制御できるようにする kernelのパッチの情報がこの辺にあったりするので、よし Kernel 再構築しようと思い立つも、提供されてるパッチは i386 向けなのでした。。残念。x86_64の場合は、制御は cpufreq-powersave.ko あたりでやってるのかな。

いろいろ調べるも結局よくわからず、cpufreq-set -u 1800000 とだけ設定して終了。powernow-k8 で 1800000 の時は勝手に 1125mV にしてくれるっぽいので、これだけでも効果があるかなと思う。適当に /etc/rc.local に書いといた。

ちなみに、dmesg で出る powernow-k8: のとこの vid の値を x とすると、設定される電圧は (1550mV - x*25mV) になるということっぽい。0x16 なら 1000mV てな具合。

このブログ記事について

このページは、らるるが2008年2月25日 02:18に書いたブログ記事です。

ひとつ前のブログ記事は「ニコ動ランキング自動生成が熱そう」です。

次のブログ記事は「Donut RAPT がフリーズする件」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

月別 アーカイブ

ウェブページ

Powered by Movable Type 7.9.0