Dynabook SS 2010 + Ubuntu で全画面表示をもっと高速化
Tridentのドライバを使うようにして、
ある程度は早くなったSS2010のUbuntu君。
それでもまだまだ鈍い感じは否めない。
もっと早くしてやろうと思えば、
解像度を下げるのも手だろうけど、さすがにそれはやりたくない。
他にできそうなことといえば、色数を減らすことか?
ということで、24ビットカラーを諦めて16ビットカラーにしてみる。
xorg.confはこんな感じ(ビデオ周りだけ抜粋)。
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
HorizSync 28.0-50.0
VertRefresh 60.0-60.0
EndSection
Section "Device"
Identifier "Card0"
Driver "trident"
BusID "PCI:1:0:0"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
DefaultDepth 16
SubSection "Display"
Viewport 0 0
Depth 16
Modes "1024x768"
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1024x768"
EndSubSection
EndSection
「DefaultDepth 16」を指定しているのがミソ。
ということで、ベンチマークテスト。
まずは、24ビットカラーの結果。
$ x11perf -repeat 5 -rect500 -f14text16 -copypixwin500 -putimage500 -shmput500
x11perf - X11 performance program, version 1.2
The X.Org Foundation server version 10900000 on :0.0
from SS2010
Mon Dec 13 16:48:26 2010
Sync time adjustment is 0.1498 msecs.
3000 reps @ 1.7165 msec ( 583.0/sec): 500x500 rectangle
3000 reps @ 1.7319 msec ( 577.0/sec): 500x500 rectangle
3000 reps @ 1.7562 msec ( 569.0/sec): 500x500 rectangle
3000 reps @ 1.8596 msec ( 538.0/sec): 500x500 rectangle
3000 reps @ 1.9149 msec ( 522.0/sec): 500x500 rectangle
15000 trep @ 1.7958 msec ( 557.0/sec): 500x500 rectangle
800000 reps @ 0.0103 msec ( 97600.0/sec): Char16 in 40-char line (k14)
800000 reps @ 0.0092 msec (109000.0/sec): Char16 in 40-char line (k14)
800000 reps @ 0.0086 msec (116000.0/sec): Char16 in 40-char line (k14)
800000 reps @ 0.0083 msec (120000.0/sec): Char16 in 40-char line (k14)
800000 reps @ 0.0084 msec (119000.0/sec): Char16 in 40-char line (k14)
4000000 trep @ 0.0090 msec (112000.0/sec): Char16 in 40-char line (k14)
800 reps @ 11.0048 msec ( 90.9/sec): Copy 500x500 from pixmap to window
800 reps @ 11.1224 msec ( 89.9/sec): Copy 500x500 from pixmap to window
800 reps @ 11.1548 msec ( 89.6/sec): Copy 500x500 from pixmap to window
800 reps @ 11.0363 msec ( 90.6/sec): Copy 500x500 from pixmap to window
800 reps @ 11.2267 msec ( 89.1/sec): Copy 500x500 from pixmap to window
4000 trep @ 11.1090 msec ( 90.0/sec): Copy 500x500 from pixmap to window
160 reps @ 31.4123 msec ( 31.8/sec): PutImage 500x500 square
160 reps @ 31.7406 msec ( 31.5/sec): PutImage 500x500 square
160 reps @ 37.9607 msec ( 26.3/sec): PutImage 500x500 square
160 reps @ 34.8917 msec ( 28.7/sec): PutImage 500x500 square
160 reps @ 31.4348 msec ( 31.8/sec): PutImage 500x500 square
800 trep @ 33.4880 msec ( 29.9/sec): PutImage 500x500 square
800 reps @ 11.0811 msec ( 90.2/sec): ShmPutImage 500x500 square
800 reps @ 11.4720 msec ( 87.2/sec): ShmPutImage 500x500 square
800 reps @ 11.1483 msec ( 89.7/sec): ShmPutImage 500x500 square
800 reps @ 11.2621 msec ( 88.8/sec): ShmPutImage 500x500 square
800 reps @ 11.1443 msec ( 89.7/sec): ShmPutImage 500x500 square
4000 trep @ 11.2216 msec ( 89.1/sec): ShmPutImage 500x500 square
続いて16ビットカラーの結果。
$ x11perf -repeat 5 -rect500 -f14text16 -copypixwin500 -putimage500 -shmput500
x11perf - X11 performance program, version 1.2
The X.Org Foundation server version 10900000 on :0.0
from SS2010
Tue Dec 14 02:13:07 2010
Sync time adjustment is 0.1289 msecs.
7000 reps @ 0.6527 msec ( 1530.0/sec): 500x500 rectangle
7000 reps @ 0.6644 msec ( 1510.0/sec): 500x500 rectangle
7000 reps @ 0.6549 msec ( 1530.0/sec): 500x500 rectangle
7000 reps @ 0.6559 msec ( 1520.0/sec): 500x500 rectangle
7000 reps @ 0.6658 msec ( 1500.0/sec): 500x500 rectangle
35000 trep @ 0.6588 msec ( 1520.0/sec): 500x500 rectangle
1200000 reps @ 0.0054 msec (184000.0/sec): Char16 in 40-char line (k14)
1200000 reps @ 0.0055 msec (181000.0/sec): Char16 in 40-char line (k14)
1200000 reps @ 0.0055 msec (181000.0/sec): Char16 in 40-char line (k14)
1200000 reps @ 0.0055 msec (183000.0/sec): Char16 in 40-char line (k14)
1200000 reps @ 0.0055 msec (181000.0/sec): Char16 in 40-char line (k14)
6000000 trep @ 0.0055 msec (182000.0/sec): Char16 in 40-char line (k14)
1200 reps @ 4.6269 msec ( 216.0/sec): Copy 500x500 from pixmap to window
1200 reps @ 4.7099 msec ( 212.0/sec): Copy 500x500 from pixmap to window
1200 reps @ 4.6551 msec ( 215.0/sec): Copy 500x500 from pixmap to window
1200 reps @ 4.6563 msec ( 215.0/sec): Copy 500x500 from pixmap to window
1200 reps @ 4.8276 msec ( 207.0/sec): Copy 500x500 from pixmap to window
6000 trep @ 4.6952 msec ( 213.0/sec): Copy 500x500 from pixmap to window
800 reps @ 12.0306 msec ( 83.1/sec): PutImage 500x500 square
800 reps @ 12.1137 msec ( 82.6/sec): PutImage 500x500 square
800 reps @ 12.0250 msec ( 83.2/sec): PutImage 500x500 square
800 reps @ 12.1248 msec ( 82.5/sec): PutImage 500x500 square
800 reps @ 12.1358 msec ( 82.4/sec): PutImage 500x500 square
4000 trep @ 12.0860 msec ( 82.7/sec): PutImage 500x500 square
1200 reps @ 4.5682 msec ( 219.0/sec): ShmPutImage 500x500 square
1200 reps @ 4.5995 msec ( 217.0/sec): ShmPutImage 500x500 square
1200 reps @ 4.6574 msec ( 215.0/sec): ShmPutImage 500x500 square
1200 reps @ 4.5984 msec ( 217.0/sec): ShmPutImage 500x500 square
1200 reps @ 4.6055 msec ( 217.0/sec): ShmPutImage 500x500 square
6000 trep @ 4.6058 msec ( 217.0/sec): ShmPutImage 500x500 square
だいぶ向上したようだ。
早速、YouTubeを見てみたが、残念ながら動画再生は厳しいようである。
まぁ、それでも24ビットカラーよりは多少はマシだけど。
とりあえず、描画の高速化についてはこれで一旦終了。
もっといい方法があったら教えてください。
ディスカッション
コメント一覧
まだ、コメントがありません