X11perf Results For Original FBDEV and s3c64xx-0.0.1 (XAA+XVideo+HWCursor) Driver

NOTE: There is a well-known issue that many of the x11perf tests are wired with 500 pixel height. These tests fail for devices that have less that 500 pixels. The x11perf was fixed to make the failing 500 pixel tests require only 400 pixels (height) so that they would succeed on a Smart7 (800x480).

NOTE: The SmartQ7 runs an ARM s3c6410 from Samsung at 666Mhz (The Clock Frequency of the Beast). The v4.0 tests are believed to have been run a 533MHz due to a software bug. v4.0 was based on Ubuntu Jaunty. v5.0 and v5.51 are based on Ubuntu Karmic. Two identical units were used to produce the results. The framebuffer on the XAA unit was configured to have 960 lines of offscreen storage (1500KB offscreen).

NOTE: On certain tests (1 pixel tests, for instance), the non-accelerated code is faster than the accelerated code. Using the g2d graphics engine requires several I/O writes and pipeline management waits. For low pixel count operations, the overhead of the 2d engine exceeds the raw framebuffer write. There is no API means in XAA to exclude "small" draws from acceleration. (And having multiple framebuffer writers would be "messy" -- X11 specifies a wait for XAA pipeline completion before any other framebuffer I/O can take place.)

NOTE: Numbers under the tests are operations per second. (Higher is better.)

NOTE: Individual tests may have some skew. Ignore outliers.

NOTE: The "fbdev" tests are with the dumb frame buffer. The "s3c64xx" test is with XAA g2d hw acceleration and hw cursor support.


v4.0 fbdevv5.0 fbdevv5.51 fbdevv5.51 s3c64xxX11perf
(Ops/sec.)(Ops/sec.)(Ops/sec.)(Ops/sec.)Test
2230000282000042500004810000Dot
93800066700098400012600001x1 rectangle
10500011800020600068400010x10 rectangle
13501590287015000100x100 rectangle
54.670.8125725500x500 rectangle
4200004290005680004910001x1 stippled rectangle (8x8 stipple)
61200725009440017400010x10 stippled rectangle (8x8 stipple)
1090145018109170100x100 stippled rectangle (8x8 stipple)
52.166.181.6749500x500 stippled rectangle (8x8 stipple)
4230004170005610004920001x1 opaque stippled rectangle (8x8 stipple)
720008240011000017400010x10 opaque stippled rectangle (8x8 stipple)
1480180022808800100x100 opaque stippled rectangle (8x8 stipple)
63.175.7106670500x500 opaque stippled rectangle (8x8 stipple)
5830005770008390007910001x1 tiled rectangle (4x4 tile)
709008510013800013700010x10 tiled rectangle (4x4 tile)
992117020502170100x100 tiled rectangle (4x4 tile)
4549.792.199.6500x500 tiled rectangle (4x4 tile)
4120004300005640004730001x1 stippled rectangle (17x15 stipple)
844009660013100015600010x10 stippled rectangle (17x15 stipple)
2010271033306860100x100 stippled rectangle (17x15 stipple)
99.7131165528500x500 stippled rectangle (17x15 stipple)
4120004110005440004730001x1 opaque stippled rectangle (17x15 stipple)
8790010700014700015500010x10 opaque stippled rectangle (17x15 stipple)
1930248040506620100x100 opaque stippled rectangle (17x15 stipple)
86118198507500x500 opaque stippled rectangle (17x15 stipple)
5710005690007940007720001x1 tiled rectangle (17x15 tile)
10900013000020600020300010x10 tiled rectangle (17x15 tile)
3340445078807930100x100 tiled rectangle (17x15 tile)
191250439452500x500 tiled rectangle (17x15 tile)
4190004290005730004980001x1 stippled rectangle (161x145 stipple)
11000013300018300018100010x10 stippled rectangle (161x145 stipple)
3320462057407340100x100 stippled rectangle (161x145 stipple)
189243302556500x500 stippled rectangle (161x145 stipple)
3950004210005570005040001x1 opaque stippled rectangle (161x145 stipple)
10600012700018700017300010x10 opaque stippled rectangle (161x145 stipple)
2300296050906870100x100 opaque stippled rectangle (161x145 stipple)
100136242520500x500 opaque stippled rectangle (161x145 stipple)
4980005040007190007400001x1 tiled rectangle (161x145 tile)
10600012800020900020100010x10 tiled rectangle (161x145 tile)
3540483069707390100x100 tiled rectangle (161x145 tile)
244282375417500x500 tiled rectangle (161x145 tile)
5060005040007350006930001x1 tiled rectangle (216x208 tile)
9280011900018500018600010x10 tiled rectangle (216x208 tile)
3940467060107260100x100 tiled rectangle (216x208 tile)
244257324392500x500 tiled rectangle (216x208 tile)
12600001630000230000026100001-pixel line segment
35300045900077000077200010-pixel line segment
4870051000113000117000100-pixel line segment
14000134002780027200500-pixel line segment
44200504009050087600100-pixel line segment (1 kid)
48600539009320089700100-pixel line segment (2 kids)
51100566009290089500100-pixel line segment (3 kids)
24800027800043700038900010-pixel dashed segment
45300545009300090800100-pixel dashed segment
41500494008350078800100-pixel double-dashed segment
71900010500001560000149000010-pixel horizontal line segment
190000256000449000433000100-pixel horizontal line segment
5330073200126000128000500-pixel horizontal line segment
29700039300065900067000010-pixel vertical line segment
40700498008510086500100-pixel vertical line segment
11100126002290022100500-pixel vertical line segment
21900016500019600029400010x1 wide horizontal line segment
954093801550051000100x10 wide horizontal line segment
59162110805340500x50 wide horizontal line segment
14400011100016200028400010x1 wide vertical line segment
819079101340047500100x10 wide vertical line segment
59864411505700500x50 wide vertical line segment
19400002330000336000039600001-pixel line
5150006290001070000110000010-pixel line
5520076300133000135000100-pixel line
40000510008920089500500-pixel line
34300032800048500048300010-pixel dashed line
5120060600104000103000100-pixel dashed line
45800557009580089000100-pixel double-dashed line
9000028800424006530010x1 wide line
68404640748014900100x10 wide line
93597617307320500x50 wide line
5230192026803390100x10 wide dashed line
5010238035303840100x10 wide double-dashed line
510058774840100010x10 rectangle outline
89803440519055800100x100 rectangle outline
33002580441013100500x500 rectangle outline
505058574825800010x10 wide rectangle outline
29201980318031100100x100 wide rectangle outline
2112324082310500x500 wide rectangle outline
5670005480007130007450001-pixel circle
16500018200028900028400010-pixel circle
22700270004920047900100-pixel circle
3900499074107580500-pixel circle
8660111001510015400100-pixel dashed circle
761089701260012600100-pixel double-dashed circle
7470034600495006830010-pixel wide circle
3480284042609650100-pixel wide circle
2392303821440500-pixel wide circle
555119165166100-pixel wide dashed circle
708181238242100-pixel wide double-dashed circle
11100053300737007110010-pixel partial circle
24100231003390034900100-pixel partial circle
472012001730171010-pixel wide partial circle
209074611101210100-pixel wide partial circle
12900001650000254000030600001-pixel solid circle
88300474006450019500010-pixel solid circle
16901610291013100100-pixel solid circle
86.487.7154793500-pixel solid circle
6020015300225003100010-pixel fill chord partial circle
26502370408013100100-pixel fill chord partial circle
5980015100226003160010-pixel fill slice partial circle
25802380400013200100-pixel fill slice partial circle
18800020600032000031200010-pixel ellipse
27600352006070059000100-pixel ellipse
553063901010010300500-pixel ellipse
10500131001810018500100-pixel dashed ellipse
8750105001470014900100-pixel double-dashed ellipse
9060038400584007710010-pixel wide ellipse
38903430564012000100-pixel wide ellipse
2592454411660500-pixel wide ellipse
542121167170100-pixel wide dashed ellipse
550142185191100-pixel wide double-dashed ellipse
13100055000747007240010-pixel partial ellipse
33000279004020040300100-pixel partial ellipse
460011701720170010-pixel wide partial ellipse
1520286374380100-pixel wide partial ellipse
126000572008120024100010-pixel filled ellipse
29503070522022500100-pixel filled ellipse
1451642961440500-pixel filled ellipse
7980016300240003200010-pixel fill chord partial ellipse
71405080810018800100-pixel fill chord partial ellipse
7800016400243003310010-pixel fill slice partial ellipse
68204870764018500100-pixel fill slice partial ellipse
2190085101430032400Fill 1x1 equivalent triangle
85001540176027800Fill 10x10 equivalent triangle
1000104017306650Fill 100x100 equivalent triangle
23200121002380034000Fill 1x1 trapezoid
108002140316028700Fill 10x10 trapezoid
1040116019907670Fill 100x100 trapezoid
1341652971410Fill 300x300 trapezoid
19700104002130023600Fill 1x1 stippled trapezoid (8x8 stipple)
78302050253017400Fill 10x10 stippled trapezoid (8x8 stipple)
4685677202770Fill 100x100 stippled trapezoid (8x8 stipple)
63.575.194.7501Fill 300x300 stippled trapezoid (8x8 stipple)
19300109002090024800Fill 1x1 opaque stippled trapezoid (8x8 stipple)
87502070253017800Fill 10x10 opaque stippled trapezoid (8x8 stipple)
5116338152750Fill 100x100 opaque stippled trapezoid (8x8 stipple)
74.188.3109500Fill 300x300 opaque stippled trapezoid (8x8 stipple)
21100125002280029400Fill 1x1 tiled trapezoid (4x4 tile)
97302130259019900Fill 10x10 tiled trapezoid (4x4 tile)
76281813101400Fill 100x100 tiled trapezoid (4x4 tile)
104121188190Fill 300x300 tiled trapezoid (4x4 tile)
19300107002110024400Fill 1x1 stippled trapezoid (17x15 stipple)
80702090256018100Fill 10x10 stippled trapezoid (17x15 stipple)
81592412102490Fill 100x100 stippled trapezoid (17x15 stipple)
121148184431Fill 300x300 stippled trapezoid (17x15 stipple)
18700108002160024900Fill 1x1 opaque stippled trapezoid (17x15 stipple)
89402080257018100Fill 10x10 opaque stippled trapezoid (17x15 stipple)
858101014002470Fill 100x100 opaque stippled trapezoid (17x15 stipple)
138168216426Fill 300x300 opaque stippled trapezoid (17x15 stipple)
20300124002390029200Fill 1x1 tiled trapezoid (17x15 tile)
94702430258019000Fill 10x10 tiled trapezoid (17x15 tile)
1750188027702950Fill 100x100 tiled trapezoid (17x15 tile)
344452586593Fill 300x300 tiled trapezoid (17x15 tile)
19100109002200024500Fill 1x1 stippled trapezoid (161x145 stipple)
89902320254017300Fill 10x10 stippled trapezoid (161x145 stipple)
1390158021802510Fill 100x100 stippled trapezoid (161x145 stipple)
305367453444Fill 300x300 stippled trapezoid (161x145 stipple)
19500106002180025500Fill 1x1 opaque stippled trapezoid (161x145 stipple)
88702080256018100Fill 10x10 opaque stippled trapezoid (161x145 stipple)
1280139021802470Fill 100x100 opaque stippled trapezoid (161x145 stipple)
206265419429Fill 300x300 opaque stippled trapezoid (161x145 stipple)
20500117002350029900Fill 1x1 tiled trapezoid (161x145 tile)
91402120257020300Fill 10x10 tiled trapezoid (161x145 tile)
1700178025102920Fill 100x100 tiled trapezoid (161x145 tile)
441502759785Fill 300x300 tiled trapezoid (161x145 tile)
20800119002370029700Fill 1x1 tiled trapezoid (216x208 tile)
94302100257020100Fill 10x10 tiled trapezoid (216x208 tile)
1920190026603300Fill 100x100 tiled trapezoid (216x208 tile)
454502696699Fill 300x300 tiled trapezoid (216x208 tile)
74501360156022400Fill 10x10 equivalent complex polygon
975103016205200Fill 100x100 equivalent complex polygons
1030063901050019000Fill 10x10 64-gon (Convex)
982110018706300Fill 100x100 64-gon (Convex)
95305890965017400Fill 10x10 64-gon (Complex)
881106017805190Fill 100x100 64-gon (Complex)
291000190000291000851000Char in 80-char line (6x13)
245000Char in 70-char line (8x13)
232000Char in 60-char line (9x15)
109000Char16 in 40-char line (k14)
49800Char16 in 23-char line (k24)
45900"Char16 in 7/14/7 line (k14, k24)"
102000104000178000806000Char in 80-char image line (6x13)
75500Char in 70-char image line (8x13)
64600Char in 60-char image line (9x15)
38900Char16 in 40-char image line (k14)
13700Char16 in 23-char image line (k24)
1680076101230029600Scroll 10x10 pixels
2820230038607750Scroll 100x100 pixels
238184288423Scroll 500x500 pixels
1840074901180027800Copy 10x10 from window to window
2180190030807870Copy 100x100 from window to window
162140247442Copy 500x500 from window to window
1700080301240028000Copy 10x10 from pixmap to window
2580256033905210Copy 100x100 from pixmap to window
155191255407Copy 500x500 from pixmap to window
32000222003880024200Copy 10x10 from window to pixmap
4210375047404320Copy 100x100 from window to pixmap
435368379352Copy 500x500 from window to pixmap
45700318005300034900Copy 10x10 from pixmap to pixmap
4090303052105110Copy 100x100 from pixmap to pixmap
416249455491Copy 500x500 from pixmap to pixmap
1680083801300025600Copy 10x10 1-bit deep plane
1780194033705840Copy 100x100 1-bit deep plane
88.7119208599Copy 500x500 1-bit deep plane
1210071301110022600Copy 10x10 n-bit deep plane
84893714002270Copy 100x100 n-bit deep plane
46.758.187.1167Copy 500x500 n-bit deep plane
1490084001360032700PutImage 10x10 square
73477211901490PutImage 100x100 square
43.750.473.788.7PutImage 500x500 square
3480379054303850PutImage XY 10x10 square
11311616264.2PutImage XY 100x100 square
6.36.29.33.5PutImage XY 500x500 square
1430068401080021700ShmPutImage 10x10 square
2470227038804910ShmPutImage 100x100 square
337329592560ShmPutImage 400x400 square
388068601100020900ShmPutImage XY 10x10 square
135228039004840ShmPutImage XY 100x100 square
8.3319605555ShmPutImage XY 400x400 square
1290119019201940GetImage 10x10 square
576572951898GetImage 100x100 square
63.554.978.588.3GetImage 400x400 square
106081113101130GetImage XY 10x10 square
92.591.112271.9GetImage XY 100x100 square
7.27.59.65.1GetImage XY 400x400 square
57803950661026400Composite 10x10 from window to window
6386039297860Composite 100x100 from window to window
36.217.622.312.5Composite 500x500 from window to window
5890383066208060Composite 10x10 from pixmap to window
621605938978Composite 100x100 from pixmap to window
37.61822.815.5Composite 500x500 from pixmap to window
192000103000012500001260000X protocol NoOperation
1550159024602620QueryPointer
1560155024402570GetProperty
17200111001900033100Change graphics context
6360227026507090Create and map subwindows (4 kids)
8850220033108910Create and map subwindows (16 kids)
9270262059509360Create and map subwindows (25 kids)
6560206039805940Create and map subwindows (50 kids)
9110260033609500Create and map subwindows (75 kids)
9210239033008520Create and map subwindows (100 kids)
9200209027209120Create and map subwindows (200 kids)
22200122002030018000Create unmapped window (4 kids)
8870118001960017900Create unmapped window (16 kids)
22800117001970017300Create unmapped window (25 kids)
23300119001980017900Create unmapped window (50 kids)
23300119002000017200Create unmapped window (75 kids)
23500118001980017800Create unmapped window (100 kids)
22700118002000017800Create unmapped window (200 kids)
93203940742011500Map window via parent (4 kids)
1670069401070018400Map window via parent (16 kids)
1790072001120018800Map window via parent (25 kids)
1650066601020019100Map window via parent (50 kids)
162004320919017800Map window via parent (75 kids)
148005710854016300Map window via parent (100 kids)
144004630655013200Map window via parent (200 kids)
19300136002220031100Unmap window via parent (4 kids)
35700308004730089300Unmap window via parent (16 kids)
399003620054300115000Unmap window via parent (25 kids)
363004260062800153000Unmap window via parent (50 kids)
460004520063100133000Unmap window via parent (75 kids)
471004670067200188000Unmap window via parent (100 kids)
489004840070300213000Unmap window via parent (200 kids)
1010071701190011500Destroy window via parent (4 kids)
17000127002120026500Destroy window via parent (16 kids)
18200142002330029800Destroy window via parent (25 kids)
18300153002580032800Destroy window via parent (50 kids)
20100161002650033900Destroy window via parent (75 kids)
20400164002550034800Destroy window via parent (100 kids)
21500170002660035500Destroy window via parent (200 kids)
5510339056505280Hide/expose window via popup (4 kids)
1090069401090010600Hide/expose window via popup (16 kids)
1300078301260012000Hide/expose window via popup (25 kids)
1470083001310012600Hide/expose window via popup (50 kids)
1380083401360012400Hide/expose window via popup (75 kids)
1440085401350012200Hide/expose window via popup (100 kids)
1380087801300010800Hide/expose window via popup (200 kids)
2810103013903760Move window (4 kids)
246094412902990Move window (16 kids)
229093312702670Move window (25 kids)
196075311302130Move window (50 kids)
16106939281710Move window (75 kids)
15006159231440Move window (100 kids)
958491677858Move window (200 kids)
54400405007820075500Moved unmapped window (4 kids)
56300392007790076100Moved unmapped window (16 kids)
53900385007630074800Moved unmapped window (25 kids)
53900373007400072500Moved unmapped window (50 kids)
53300369007170072800Moved unmapped window (75 kids)
50600369006950071400Moved unmapped window (100 kids)
52500372007050070600Moved unmapped window (200 kids)
103004910661013700Move window via parent (4 kids)
27000156002290038500Move window via parent (16 kids)
35800210003250050400Move window via parent (25 kids)
48200310004650065500Move window via parent (50 kids)
56600360005510071300Move window via parent (75 kids)
57900409006100076100Move window via parent (100 kids)
65500493006650084900Move window via parent (200 kids)
3810195031803580Resize window (4 kids)
2950152025303120Resize window (16 kids)
2890136023302750Resize window (25 kids)
2340113017802320Resize window (50 kids)
207096314701980Resize window (75 kids)
175084812901730Resize window (100 kids)
12005898701090Resize window (200 kids)
62800361006560067600Resize unmapped window (4 kids)
54800350006680066400Resize unmapped window (16 kids)
60000347006630064900Resize unmapped window (25 kids)
58500337006510064200Resize unmapped window (50 kids)
55200335006330064000Resize unmapped window (75 kids)
56000333006260062200Resize unmapped window (100 kids)
54800334006440062700Resize unmapped window (200 kids)
2750190030802880Circulate window (4 kids)
2160142023002200Circulate window (16 kids)
1900131022002090Circulate window (25 kids)
1750116018501960Circulate window (50 kids)
1570106017501820Circulate window (75 kids)
148097915901680Circulate window (100 kids)
112075111901320Circulate window (200 kids)
138000115000191000180000Circulate Unmapped window (4 kids)
11000085800183000133000Circulate Unmapped window (16 kids)
10000081600170000107000Circulate Unmapped window (25 kids)
947005660014200078900Circulate Unmapped window (50 kids)
82500443009500067200Circulate Unmapped window (75 kids)
72100377008970056100Circulate Unmapped window (100 kids)
28600177003060025800Circulate Unmapped window (200 kids)