忍者ブログ

プロフィール

HN:
PClifer
性別:
男性
職業:
学生
趣味:
コンピュータ

ブログ内検索

アクセス解析

注意書き

赤字でかかれている部分は本当のこと。 プロは9割のウソに1割の真実を混ぜるのです。    え、ギャクだって?

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

2024.04.20 |

IRQ8Priority についてのウソ

どうもPCの動作がおかしい。
簡単にCPUが100%になってしまい、ソフトが切り替わるまで時間がかかるようになってしまった。
特に、virtualBoxを入れてゲストを起動していると
ホストとゲストの両方が暇なのにvirtualBoxが100%食い続ける。
BSE使って制限をかければかろうじて使えるものの、どうもすっきりしない。



昔から、暇があればWindowsの設定をいじっていたせいで
Programフォルダの中にはレジストリ調整のツールが結構入ってる。
Win高速化とか、窓の手とか、有名なソフトをかたっぱしから試したもんで
どの設定が影響しているのか、そもそもどれをいじったか見当がつかない・・・。
とりあえず、常駐させているAutogearで優先度をいじっても
ソフトがスムーズに動かないので、プロセス切り替えあたりだろうと予想をたてて
調べてみる。

あ、そういえば、どれかのソフトに「優先的にCPUを別の処理に割り当てて、体感速度を速くする」みたいな設定があったなー。どれか忘れたけど。


(・・・ぐぐり中・・・)


あった。
どうも「リアルタイムクロック」という部分が関係しているらしい。
CPUが実行するソフト(プロセス)を切り替える処理のタイミングを制御しているみたい。
つまりは割り込みかけて、プロセスから他のプロセスへ切り替えているのか。
ってことは、これが機能しないといつまでも100%のソフトが処理を占有してしまうのか。今の症状にあってるっぽいし、これは怪しい・・・。


リアルタイムクロックの優先度は「IRQ8Priority」に書き込まれている。
(「HKEY_LOCAL_MACHINE\System\ CurrentControlSet\Control\PriorityControl」にある)
regeditで見たら、うちのPCは十進数値で2となってた。
おそらく、これはどれかのソフトで最適な設定にした後のはず・・・・。
そこで、ちょうどショートカットにあった
INASOFTさんのいじくるつくーるの設定で見てみた。
どうやら、ここには1-38の値が設定できるらしい。
なるほど、ってことは1が優先度の最高値で、今は2となっているわけだね。
ふむふむ、それならたぶん適切な値なんだろう。原因はまた別にあるのかも・・・
・・ちょっとまてよ? 38って数字どっかでみたぞ!?


(再度、ぐぐり中・・・)


ぐぐるまでもなく、いじくるつくーるのヘルプの中に
詳しい説明がありました。作者様に感謝。

ヘルプより引用
「CPUによる割り込み処理の優先度を指定します。デフォルトは0、もっとも優先されない状態になっています。環境によってはこの数字を上げることにより、パフォーマンスが上がります。ただし、上げるといっても1か2あたりが適当で、上げすぎるとCPUの割り込みばかりになって、Windowsが動作しなくなります。」



つまり、普通のプロセスの優先度とまったく同じだったみたい。
プロセスの優先度は、
低 4
通常 8
通常以上 10
高  13
となっている。
最低値が0・最高値が38となっている。

 参考:@IT Windows Tips 起動するプログラムの優先度を変更する方法(1)

今の設定は2、ってことは
今のリアルタイムクロックの優先度は低い。かなり低い。
ちっとも高くないじゃん! 体感速度を上げるってのはウソ?
「1か2が適当」って書いてあるのだけど、このままほかのプロセスが100%になったら、切り替えが正しく機能しないんじゃあ・・・?


とりあえず、なにごとも実験よ!
てなわけで「上げすぎると」という注意書きにビクビクしながらも
値を16(適当に 高以上リアルタイム以下で)にしてみた。




あっさり解決しました




全体的にかなりサクサクと動くようになった。
特にvirtualBoxがきちんと機能してくれて良かった。
仮にゲストが100%になっても、ホストとの切り替えがスムーズに保たれてて感動。
まあ、似たような例を見かけないからうちの環境が特殊なのかもしれないけど・・・


参考までに
Celeron 2.53GHz
Memory PC3200 1.2GB
WindowsXP Pro


結局、リアルタイムクロックの優先度を上げることで解決できたのだけど
これ以外のマシンで効果があるかはまったく不明。
とりあえず、IRQ8Priorityを16にしても問題はなさそうです。
普通は1か2で十分なのかもしれないけど、例外もあるってことで。



(追記)
IRQ8Priorityを1とか2にするのはウソなのか?
というつもりで書き始めたんですが
いろいろ調べていたら、多くのPCでは効果があるみたいですね。
どこがおかしいんだろう? どなたか詳しい方、このあたりの仕組みについて
語ってくださるとうれしいです。
あと、この記事にウソがあったら
「ウソだっ!!!」
とつっこんでくれるとすごくありがたいかも。

え、ウソ用語辞典だから間違ってもいいじゃないかって?
なにがホントかわからずにウソをついても面白くないでしょ  :-)
PR

2007.11.17 | Comments(1) | Trackback() | マイメモ

コメント

無題

僕はIRQ8Priorityを10進数で38にしているのですが、十進数であっていますよね?
ちなみにほかのIRQの優先度もあげていますw

2011-08-19 金 22:47:32 | | Jun #57526e795e [ 編集]

コメントの投稿


| HOME | »

忍者ブログ [PR]