From 9627548cd8e570faa16b2755bf5a65bb1df86ec0 Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Fri, 19 Oct 2007 14:47:06 -0700 Subject: [PATCH] Add 'first look at Glucose' entry --- src/glucose/i965/first_look.mdwn | 94 ++++++++++++++++++++++ src/glucose/i965/first_look/expedite.data | 12 +++ src/glucose/i965/first_look/expedite.png | Bin 0 -> 43382 bytes 3 files changed, 106 insertions(+) create mode 100644 src/glucose/i965/first_look.mdwn create mode 100644 src/glucose/i965/first_look/expedite.data create mode 100644 src/glucose/i965/first_look/expedite.png diff --git a/src/glucose/i965/first_look.mdwn b/src/glucose/i965/first_look.mdwn new file mode 100644 index 0000000..c1c54ab --- /dev/null +++ b/src/glucose/i965/first_look.mdwn @@ -0,0 +1,94 @@ +[[meta title="A first look at Glucose on the i965"]] + +[[tag xorg exa performance i965]] + +As readers of my blog know, I've been working on improving the Intel +965 driver within the [EXA](http://cworth.org/tag/exa/) acceleration +architecture of the X server. Meanwhile, there's an alternate +acceleration architecture originally +[announced](http://lists.freedesktop.org/archives/xorg/2006-August/017527.html) +by Zack Rusin in August 2006 called Glucose. The idea with Glucose is +to accelerate X rendering operations by using OpenGL. + +Recently there's been a fair amount of activity in the various Glucose +branches, so I thought I'd take a look to see how well it's +working. This was quite convenient for me as the current Glucose work +is focused only on Intel cards. Since Glucose isn't quite ready for +prime-time yet, it does require fetching various non-master branches +of several git repositories. It's not always obvious which branches to +take, so José Fonseca was kind enough to writeup some [Glucose build +instructions](http://www.freedesktop.org/wiki/Software/Glucose). + +I've followed those instructions and run a benchmark comparing Glucose +and EXA. The benchmark I chose is the expedite application that comes +with evas, (thanks to the people that kindly pointed out this newer +benchmark to me after m recent +[explorations](http://cworth.org/exa/i965/render_bench/) with the +older render_bench). To get expedite you'll need the e17/libs/evas and +e17/apps/expedite modules from [enlightenment +CVS](http://enlightenment.org/p.php?p=download/cvs&l=en). + +Expedite is a nice benchmark in that it separates things like image +blending and text rendering into separate tests, (unlike +render_bench). It's also nice that evas includes many backends which +can be interesting for comparison, (though I won't be looking at +anything but its XRender-based backends here---and it looks like evas' +cairo and OpenGL backends are not currently functional). + +So here are the results I got for three acceleration architectures: + + 1. XAA with the XAANoOffscreenPixmaps option, (this is an + all-software implementation for reference). + + 2. Glucose---the new thing we're looking at here. + + 3. EXA, (as available in the various glucose branches---so without + things like my recent glyph-pixmaps work). + +The results are all normalized to the performance of our baseline, +XAA. And larger numbers are better. + +[[img expedite.png]] + +The [raw +data](http://cworth.org/glucose/i965/first_look/expedite.data) is also +available for anyone with particular interest, (it has non-normalized +values as well as results from evas' software backends using both SDL +and X11 for image transport). + +The quick conclusion is that, so far, I'm not getting any benefit from +running Glucose as compared to just running an all-software +implementation, (see how all Glucose and XAA bars are basically +identical). I might still not have everything compiled or running +correctly yet, but I'm quite sure that at least _some_ Glucose code +was active during my Glucose run. That's because a glucose module +failed to find a required symbol and crashed during the "Polygon +Blend" test, (which is why it doesn't have a bar in the chart, nor is +there a number for the overall "EVAS SPEED" result for Glucose). + +Meanwhile, it's also clear that EXA is going far too slow for text +operations. This isn't any surprise since I've documented problems +with slow text rendering on the i965 several times before. However, +I've never before measured text rendering that's _quite_ this +slow. I'm seeing speeds of only about 30k glyphs/sec. with EXA on +these branches, while my previous testing always showed about 100k +glyphs/sec. I suspect that there's been some regression somewhere in +the X server or the Intel driver, (and likely unrelated to anything +about Glucose---Keith has reported similar slowness with builds from +the master branches). + +Another interesting thing to look at is the difference caused by the +"few" variants of the "Rect Blend" and "Rect Solid" tests. When going +from the non-few to the "few" variants, both Glucose and EXA slow down +significantly. I'm quite happy to see these tests in this benchmark +since it is often the setup overhead that kills you when trying to +accelerate a small number of operations, (and applications have a +tendency to want to do that very often). Many synthetic benchmarks are +extremely non-useful in hiding this overhead by doing huge batches of +operations. + +Meanwhile, I'm still working on fixing the horribly slow compositing +problems in the i965 driver that are keeping text so slow. Keith +Packard and Eric Anholt are helping me debug my code, and hopefully +we'll soon have something to show which runs at a reasonable speed. + diff --git a/src/glucose/i965/first_look/expedite.data b/src/glucose/i965/first_look/expedite.data new file mode 100644 index 0000000..2dd0fe9 --- /dev/null +++ b/src/glucose/i965/first_look/expedite.data @@ -0,0 +1,12 @@ +Title: Expedite comparison of Glucose and EXA +Test Image Blend Unscaled Image Blend Solid Unscaled Image Blend Nearest Scaled Image Blend Nearest Solid Scaled Image Blend Smooth Scaled Image Blend Smooth Solid Scaled Image Blend Border Image Blend Solid Border Image Blend Border Recolor Image Quality Scale Image Data ARGB Image Data ARGB Alpha Image Data YCbCr Image Data YCbCr Image Crossfade Text Basic Text Styles Text Styles Different Strings Text Change Textblock Basic Textblock Intl Rect Blend Rect Solid Rect Blend Few Rect Solid Few Image Blend Occlude Image Blend Occlude Image Blend Occlude Image Blend Occlude Image Blend Occlude Image Blend Occlude Image Blend Occlude Image Blend Occlude Image Blend Occlude Image Blend Occlude Image Blend Occlude Image Blend Occlude Polygon Blend EVAS SPEED +#sdl 737.22 741.24 353.55 353.71 354.33 354.04 354.41 353.58 353.86 356.63 183.21 108.61 178.67 144.78 108.99 212.73 22.55 15.32 109.22 132.22 290.25 102.42 229.57 2316.83 2621.25 1283.12 1190.04 2199.01 766.30 745.26 754.79 682.39 678.74 677.66 417.25 406.86 410.40 112.06 563.50 +#x11-exa 622.51 630.31 308.25 309.40 309.45 309.62 309.13 309.39 309.42 356.18 164.19 104.43 158.99 147.68 177.48 194.27 20.49 13.68 98.10 138.86 229.72 140.33 206.49 1756.61 1892.02 1057.33 986.92 1835.71 647.75 636.06 641.94 587.21 583.45 582.27 373.42 363.99 367.70 138.68 474.20 +#x11-xaa-nop 366.64 368.87 178.93 178.94 178.82 178.96 179.01 178.74 178.99 201.84 99.72 74.15 97.35 93.40 99.54 152.16 19.86 13.05 73.09 104.47 158.20 105.57 140.10 1411.99 1554.83 636.21 594.30 1118.18 385.12 373.41 374.36 352.03 350.95 352.18 262.07 257.03 257.26 106.96 310.72 +#xr-xaa-nop 736.82 750.40 321.51 321.17 322.33 322.59 322.22 322.60 320.61 388.44 113.24 69.71 102.19 38.08 191.82 89.78 7.29 5.23 55.74 83.32 164.42 64.22 212.08 1732.53 2090.96 1295.55 1205.59 2191.94 769.36 756.66 763.89 685.08 682.32 679.61 410.31 398.08 400.17 33.96 511.10 +#xr-glucose 694.44 734.65 321.95 322.41 322.63 322.05 322.23 321.98 322.80 380.38 110.71 68.77 101.49 37.76 184.96 86.18 6.68 4.81 52.06 74.99 154.85 60.68 182.31 745.99 805.64 1272.17 1202.24 1898.08 817.16 813.42 812.72 723.15 717.82 723.23 407.87 396.75 399.45 0.0 0.0 +#xr-exa 2270.80 2321.21 722.87 723.29 723.43 723.12 723.16 723.31 723.10 980.81 192.29 108.97 162.06 197.13 445.80 15.81 1.10 0.83 11.94 13.09 40.64 43.63 344.36 1065.92 2107.49 3816.84 3583.06 5887.72 2329.64 2334.40 2338.51 2102.37 2074.81 2094.23 727.41 703.36 708.28 65.87 1161.91 +# Last 3 rows of the above, but normalized to XAA times +xaa 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +glucose 0.942483 0.979011 1.00137 1.00386 1.00093 0.998326 1.00003 0.998078 1.00683 0.97925 0.977658 0.986516 0.99315 0.991597 0.964237 0.959902 0.916324 0.919694 0.933979 0.900024 0.941795 0.944877 0.859628 0.430578 0.385297 0.981954 0.997221 0.865936 1.06213 1.07501 1.06392 1.05557 1.05203 1.06418 0.994053 0.996659 0.998201 0.0 0.0 +exa 3.08189 3.0933 2.24836 2.25205 2.24438 2.24161 2.24431 2.24213 2.25539 2.525 1.69807 1.56319 1.58587 5.17673 2.32405 0.176097 0.150892 0.1587 0.214209 0.157105 0.247172 0.679383 1.62373 0.615239 1.00791 2.94612 2.97204 2.68608 3.02802 3.08514 3.06132 3.06879 3.04082 3.08152 1.77283 1.76688 1.76995 1.93963 2.27335 diff --git a/src/glucose/i965/first_look/expedite.png b/src/glucose/i965/first_look/expedite.png new file mode 100644 index 0000000000000000000000000000000000000000..1bf83cfd93e0874bb7de8c6f3e3c8a0299664866 GIT binary patch literal 43382 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 E7g_xaJpcdz literal 0 HcmV?d00001 -- 2.43.0