Linux チューン
グラフィックスの高速化
【前書き】
GNOME+Enlightmentの組み合わせって重いっすよねー。ウィンドマネージャだけsawmillに変えてみた物のやっぱり重い...
と、いうことでPentiumPro以降サポートされたMemoryTypeRangeRegisterとかいう仕組みを使ってグラフィックスメモリアクセスの高速化をしよう。
【パッケージ・ハードウエア】
RedHat6.1 + PC−PJ2−X4
【参照HomePage】
長野氏のページ
【事前確認】
1.自分のCPUがMTRRサポートしている事の確認
cat /proc/cpuinfoをして flags : mtrrが記述してあればmtrr使える
2.mtrrが有効になっている事の確認
cat /proc/mtrrして
reg00: base=0x00000000 ( 0MB), size= 128MB: write-back, count=1
となっていればカーネルにmtrrが組み込まれている。なければmtrrが使えるようにリコンフィグしよう。
3.ビデオメモリの確認
テキストベースログインした後、シェルから startx >& /tmp/x.logでXサーバを立ち上げ、less /tmp/x.log すると、下のようにグラフィックスメモリの容量とアドレスが記述されている。
(--) SVGA: PCI: Trident Cyber 9525 DVD rev 73, Memory @ 0xfe400000, 0xfe800000, MMIO @ 0xfede0000
(--) SVGA: videoram: 2048k
上の例のx.logを見るとグラフィックメモリが2MByteでアドレスは0xfe400000から始まっている事が分かる。
【設定してみる】
echo "base=0xfe400000 size=0x200000 type=write-combining" > /proc/mtrr
base= がグラフィックスメモリのアドレス、size= が容量だ。
【効果のほど】
えー定番の(笑)XEngineとHDBenchクローンを使って設定前後を比較してみる。
[XEngine]

確かに速くなっている! 設定前がsawmillで設定後がEnlightmentだが細かい事気にしないように(笑)
両ウィンドマネージャでXEngineの結果に差がないことは事前に確認済みだ
[HDBench]


こちらも速くなっている...のはいいけど、なぜか設定前の方がハードディスクの読み込みが逆に遅いんだけど(爆)
[back]
[top]