モバイルUbuntu、NetWalker登場 プロセス優先順位最適化 nice,renice設定編 その46
Kapperです。もう8月末となってしまいましたがまだ残暑が厳しく暑い日が続きますね。Netwalkerの高速化のネタとしまして、今回は「主にコンピューターについて」さんのブログにありますnice値の設定につきましてネタにします。重い常駐物に設定しますとだいぶ体感速度が速くなります。大変感謝です。●nice、reniceの設定についてLinuxのプロセスの優先順位につきましてnice、reniceコマンドにて設定できます。マルチコアか常にCPUに余裕のあるPCであればそれ程問題にはならないかもしれませんが、Netwalker含む低スペックPCの場合は結構重荷になる様です。nice設定はこれから起動するアプリ、reniceは起動中のアプリへのコマンドです。プロセスの優先順位のにコントロールによりプロセスタイミング、速度を調整できます。プロセスは-20~20まで設定でき、低い方が優先順位が高いです。主にマイナス側で、-20が最大値となります。主要のアプリを高めに、使わない常駐物は外すか低めにしましょう。●Netwalkerのnice、renice設定Netwalkerの場合でも通常のUbuntuと同様ですが、プロセスのnice値がどの様に設定されているのか確認する事がまず第一です。端末よりtopコマンドにてどの様なプロセスが動いているかまず自分の目で確認してみましょう。nice値が0のプロセスと-5のプロセスが2種類あります。・nice値 0通常アプリ・nice値 -5一部常駐物ここで気が付きますのは通常のアプリより一部の常駐物の方が優先順位を高く設定してある点です。つまり過負荷の場合は通常アプリが後回しになります。勝手な推定ですが、低速シングルコアのマシンの場合、これが原因で速度落ちが発生する要因になっている可能性があるらしいです。特にX.orgやパネル類、daemon類などはほぼ常駐しているにもかかわらず優先順位付けで後回しにされていると言う事です。通常のx86のUbuntuにインストールした際には-5はありません。これはひょっとしてNetwalker特有の設定でしょうか?もしそうでありましたら優先順位を高めれば良いのでは、との事で色々優先順位を変えてみましょう。nice値をマイナス設定にするにはスーパーユーザー権限が必要です。まずは重そうな半常駐物のX.orgからですがreniceを使います。topにてまずプロセスのPIDナンバーを確認します。 $top top - 00:53:36 up 1 day, 12:36, 2 users, load average: 2.17, 1.02, 0.47 Tasks: 97 total, 1 running, 96 sleeping, 0 stopped, 0 zombie Cpu(s): 21.2%us, 78.8%sy, 0.0%ni, 0.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 483004k total, 409848k used, 73156k free, 0k buffers Swap: 0k total, 0k used, 0k free, 175188k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 3407 kapper12 20 0 227m 47m 21m S 71.4 10.1 52:59.39 chromium-browse 231 root 20 0 0 0 0 S 24.1 0.0 2:55.38 pdflush 1056 root 15 -5 0 0 0 S 1.7 0.0 0:06.09 ubifs_bgt0_0 6952 kapper12 20 0 2492 1188 936 R 1.0 0.2 0:00.45 top 2894 root 5 -15 41276 28m 5764 S 0.7 6.1 33:06.07 Xorg 3513 kapper12 20 0 271m 38m 16m S 0.7 8.1 29:15.78 chromium-browse 3244 kapper12 20 0 110m 9472 6364 S 0.3 2.0 20:09.58 mixer_applet2 3384 kapper12 20 0 38896 11m 8180 S 0.3 2.4 7:13.07 gnome-terminal 1 root 20 0 2724 1600 448 S 0.0 0.3 0:11.26 init 2 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kthreadd 3 root 15 -5 0 0 0 S 0.0 0.0 0:02.78 ksoftirqd/0 4 root 15 -5 0 0 0 S 0.0 0.0 0:40.36 events/0 5 root 15 -5 0 0 0 S 0.0 0.0 0:00.03 khelper 108 root 15 -5 0 0 0 S 0.0 0.0 0:00.01 kblockd/0 111 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 cqueue 115 root 15 -5 0 0 0 S 0.0 0.0 0:51.79 mxc_spi.0 121 root 15 -5 0 0 0 S 0.0 0.0 0:00.91 ksuspend_usbd (以下略)ここで一例ですがX.orgのPIDナンバーが出てきますのでそれをメモして$ sudo renice -15 (PIDナンバー)これで優先順位が変わったはずです。マウスの動きもキビキビします。体感速度はだいぶ変わりますね。常駐方法はこちらを参考に。PIDナンバーは起動時に毎回変わりますので面倒ですね。●まとめあまりこの手の設定は効果がどれだけ出るのかわかりませんでしたが、色々試してみますと少しづつ効果を発揮しますね。ただ、単なる優先順位づけなので、色々なアプリを登録しても結局元のもくあみで重くなりそうです。高速道路でも混んでたら渋滞しますよねw使う側でも優先順位を付けてコントロールする必要があるかもしれません。色々試してみましょう。