djk@cs.columbia.edu (David Kurlander) (10/10/90)
The advertisements for the newest version of OpenWindow/XNeWS claim that it's five times faster than the last release. Would either someone at Sun or people that are now using the new version elaborate on this. Has low level imaging been sped up, or just window creation and manipulation? Thanks, David -- ---------------------------------- David Kurlander Department of Computer Science djk@cs.columbia.edu Columbia University
ks@tut.fi (Syst{ Kari) (10/11/90)
It is allways dangerous to state n times faster... So don't take Sun's claim (or this article) to literally. According to my experiences X-side is significantly faster and NeWS-side is faster (about 20%) than old release. I also run some randomly picked benchmarks by using 'x11perf'. I got the following results on SS1 with color disp. OW2 is 1.0-4.0 times faster than OW1 I also noticed that OW2 is 1.6-3.5 times faster than MIT X11 on SS1 with color. On any other platform OW2 and MIT-X seemed to have about the same performance. I think the most performance inprovements are done to the olwm, which replaces the old pswm. Unfortunately, I also lost the possibility to configure the window manager by using postscript. Anyway, you really can notice the performance improvement of the wm in everyday usage. BTW: I'm still waiting for better NeWS-side. The OW2 broke several of my NeWS-applications, especially those who used lite-toolkit. For example my favorit terminal-window was a NeWS-application. In OW2 it is unusable because of focus and other problems. -- This article represents my personal views. Quote of the year: "X is the Fortran of windowing systems." Kari Systa, Tampere Univ. Technology, Box 527, 33101 Tampere, Finland work: +358 31 162585 fax: +358 31 162913 home: +358 31 177412
naughton@wind.Eng.Sun.COM (Patrick Naughton) (10/12/90)
In article <1990Oct10.154744.12240@cs.columbia.edu>, djk@cs.columbia.edu (David Kurlander) writes: |> The advertisements for the newest version of OpenWindow/XNeWS claim |> that it's five times faster than the last release. Would either |> someone at Sun or people that are now using the new version |> elaborate |> on this. Has low level imaging been sped up, or just window |> creation |> and manipulation? |> |> Thanks, |> David |> -- |> ---------------------------------- |> David Kurlander Department of Computer Science |> djk@cs.columbia.edu Columbia University Version 2 is faster than Version 1.0.1 in just about every way imaginable. Using x11perf and our own NeWS benchmarks, we found increases from a few percent up to 32X improvement on SPARCstations with dumb 8 bit color framebuffers (CG3). GX graphics improvements were even higher. A fair ballpark estimate is, graphics are twice as fast on average, and window manipulation is 5X faster. -Patrick -- ______________________________________________________________________ Patrick J. Naughton ARPA: naughton@sun.com Window Systems Group UUCP: ...!sun!naughton Sun Microsystems, Inc. AT&T: (415) 336 - 1080
naughton@wind.Eng.Sun.COM (Patrick Naughton) (10/12/90)
In article <KS.90Oct11094714@karikukko.tut.fi> ks@tut.fi (Syst{ Kari) writes: > >It is allways dangerous to state n times faster... So don't take >Sun's claim (or this article) to literally. > >According to my experiences X-side is significantly faster and NeWS-side is >faster (about 20%) than old release. > >I also run some randomly picked benchmarks by >using 'x11perf'. I got the following results on SS1 with color disp. > OW2 is 1.0-4.0 times faster than OW1 > >I also noticed that OW2 is 1.6-3.5 times faster than MIT X11 on SS1 >with color. On any other platform OW2 and MIT-X seemed to have about the same >performance. > >I think the most performance inprovements are done to the olwm, which >replaces the old pswm. Unfortunately, I also lost the possibility to >configure the window manager by using postscript. Anyway, you really can >notice the performance improvement of the wm in everyday usage. > >BTW: I'm still waiting for better NeWS-side. The OW2 broke several of >my NeWS-applications, especially those who used lite-toolkit. For example >my favorit terminal-window was a NeWS-application. In OW2 it is unusable >because of focus and other problems. > >-- >This article represents my personal views. >Quote of the year: "X is the Fortran of windowing systems." >Kari Systa, Tampere Univ. Technology, Box 527, 33101 Tampere, Finland >work: +358 31 162585 fax: +358 31 162913 home: +358 31 177412 I don't want to get into a flame war over "lies, damned lies, and benchmarks", but I think I should clear up a few things here. I think it is safe to say that Sun spent thousands of person-hours working on the performance of the X11/NeWS Version 2 server. Although the improvement in performance from 1.0's pswm to V2's olwm is impressive, since x11perf uses an 'override-redirect' window, it does not test olwm in any way. We worked on down-sizing and optimizing every part of OpenWindows, the toolkits, the applications, the X11 and NeWS interpreters, the graphics layer, and the window manager... I'm not sure how you arrived at your "1.0-4.0 times faster" numbers, but here are the results I've got from x11perf comparing OW1.0 to OWV2... This is where I got my "few percent to 32X" figure... I don't find it "dangerous" to quote numbers that can be easily reproduced with a publicly available benchmark. -Patrick ps. We realize that NeWS and X11 interaction (focus etc...) suffered at the hands of our efforts to make our X11 implementation faster and more "standard", and are addressing these concerns in future releases of OpenWindows. ---------------------------------------------------------------------- Configuration: 4/60 (SPARCstation 1), SunOS 4.1, 16M, CG3 (dumb 8 bit color) Ratios are: A: X11/NeWS Version 2 - Sun Microsystems Inc. server on unix:0.0 divided by B: X11/NeWS 1.0 - Sun Microsystems Inc. server on unix:0.0 Raw rates(ops/sec) Ratio Category A B 99600.00 109000.00 - 0.91 Dot 35400.00 5340.00 ++ 6.63 1x1 rectangle 23000.00 4660.00 ++ 4.94 10x10 rectangle 1090.00 552.00 + 1.97 100x100 rectangle 48.70 26.40 + 1.84 500x500 rectangle 13900.00 3170.00 ++ 4.38 1x1 stippled rectangle 6230.00 1790.00 ++ 3.48 10x10 stippled rectangle 207.00 87.90 ++ 2.35 100x100 stippled rectangle 14.00 4.20 ++ 3.33 500x500 stippled rectangle 11300.00 3740.00 ++ 3.02 1x1 opaque stippled rectangle 6330.00 1910.00 ++ 3.31 10x10 opaque stippled rectangle 357.00 84.90 ++ 4.20 100x100 opaque stippled rectangle 27.60 4.00 ++ 6.90 500x500 opaque stippled rectangle 11900.00 3940.00 ++ 3.02 1x1 4x4 tiled rectangle 8230.00 2430.00 ++ 3.39 10x10 4x4 tiled rectangle 756.00 88.60 ++ 8.53 100x100 4x4 tiled rectangle 41.40 3.80 +++ 10.89 500x500 4x4 tiled rectangle 18000.00 4020.00 ++ 4.48 1x1 161x145 tiled rectangle 6380.00 2780.00 ++ 2.29 10x10 161x145 tiled rectangle 126.00 119.00 + 1.06 100x100 161x145 tiled rectangle 5.40 5.40 = 1.00 500x500 161x145 tiled rectangle 47500.00 21200.00 ++ 2.24 1-pixel line segment 37300.00 18400.00 ++ 2.03 10-pixel line segment 14400.00 8270.00 + 1.74 100-pixel line segment 3880.00 2400.00 + 1.62 500-pixel line segment 9420.00 6640.00 + 1.42 100-pixel line segment (1 kid) 6410.00 5280.00 + 1.21 100-pixel line segment (2 kids) 4570.00 4220.00 + 1.08 100-pixel line segment (3 kids) 18000.00 1580.00 +++ 11.39 10-pixel dashed segment 6270.00 515.00 +++ 12.17 100-pixel dashed segment 5490.00 338.00 +++ 16.24 100-pixel double-dashed segment 62000.00 26700.00 ++ 2.32 1-pixel line 46400.00 22600.00 ++ 2.05 10-pixel line 15500.00 9020.00 + 1.72 100-pixel line 3950.00 2460.00 + 1.61 500-pixel line 20200.00 3640.00 ++ 5.55 10-pixel dashed line 6450.00 642.00 +++ 10.05 100-pixel dashed line 6230.00 377.00 +++ 16.53 100-pixel double-dashed line 42700.00 21500.00 + 1.99 10x1 wide line 214.00 208.00 + 1.03 100x10 wide line 77.70 69.90 + 1.11 500x50 wide line 43.30 44.80 - 0.97 100x10 wide dashed line 37.20 38.20 - 0.97 100x10 wide double-dashed line 34100.00 1020.00 +++ 33.43 1-pixel circle 16000.00 768.00 +++ 20.83 10-pixel circle 361.00 351.00 + 1.03 100-pixel circle 112.00 68.90 + 1.63 500-pixel circle 148.00 64.10 ++ 2.31 100-pixel dashed circle 144.00 48.70 ++ 2.96 100-pixel double-dashed circle 16000.00 765.00 +++ 20.92 10-pixel wide circle 75.00 57.50 + 1.30 100-pixel wide circle 21.10 16.80 + 1.26 500-pixel wide circle 8.10 6.90 + 1.17 100-pixel wide dashed circle 5.20 4.50 + 1.16 100-pixel wide double-dashed circle 529.00 490.00 + 1.08 10-pixel partial circle 370.00 351.00 + 1.05 100-pixel partial circle 32900.00 1010.00 +++ 32.57 1-pixel solid circle 14500.00 715.00 +++ 20.28 10-pixel solid circle 225.00 224.00 = 1.00 100-pixel solid circle 45.40 22.00 ++ 2.06 500-pixel solid circle 407.00 427.00 - 0.95 10-pixel fill chord partial circle 238.00 229.00 + 1.04 100-pixel fill chord partial circle 389.00 408.00 - 0.95 10-pixel fill slice partial circle 220.00 206.00 + 1.07 100-pixel fill slice partial circle 3740.00 784.00 ++ 4.77 10-pixel ellipse 713.00 387.00 + 1.84 100-pixel ellipse 160.00 90.70 + 1.76 500-pixel ellipse 208.00 84.00 ++ 2.48 100-pixel dashed ellipse 204.00 62.60 ++ 3.26 100-pixel double-dashed ellipse 3640.00 782.00 ++ 4.65 10-pixel wide ellipse 78.20 53.70 + 1.46 100-pixel wide ellipse 25.10 18.40 + 1.36 500-pixel wide ellipse 10.70 7.80 + 1.37 100-pixel wide dashed ellipse 7.20 5.60 + 1.29 100-pixel wide double-dashed ellipse 484.00 501.00 - 0.97 10-pixel partial ellipse 390.00 381.00 + 1.02 100-pixel partial ellipse 4590.00 738.00 ++ 6.22 10-pixel filled ellipse 774.00 296.00 ++ 2.61 100-pixel filled ellipse 82.60 37.40 ++ 2.21 500-pixel filled ellipse 405.00 446.00 - 0.91 10-pixel fill chord partial ellipse 302.00 302.00 = 1.00 100-pixel fill chord ellipse 393.00 431.00 - 0.91 10-pixel fill slice partial ellipse 276.00 268.00 + 1.03 100-pixel fill slice ellipse 2560.00 2970.00 - 0.86 Fill 1-pixel/side triangle 1780.00 1950.00 - 0.91 Fill 10-pixel/side triangle 328.00 283.00 + 1.16 Fill 100-pixel/side triangle 2270.00 2290.00 = 0.99 Fill 10x10 trapezoid 417.00 331.00 + 1.26 Fill 100x100 trapezoid 1400.00 1020.00 + 1.37 Fill 10x10 stippled trapezoid 129.00 68.50 + 1.88 Fill 100x100 stippled trapezoid 1480.00 1080.00 + 1.37 Fill 10x10 opaque stippled trapezoid 183.00 66.60 ++ 2.75 Fill 100x100 opaque stippled trapezoid 1260.00 1290.00 - 0.98 Fill 10x10 tiled trapezoid 178.00 70.20 ++ 2.54 Fill 100x100 tiled trapezoid 1360.00 1730.00 - 0.79 Fill 10-pixel/side complex polygon 293.00 283.00 + 1.04 Fill 100-pixel/side complex polygons 26600.00 25000.00 + 1.06 Char in 80-char line (6x13) 31800.00 31200.00 = 1.02 Char in 80-char line (TR 10) 11700.00 11200.00 + 1.04 Char in 30-char line (TR 24) 25800.00 22600.00 + 1.14 Char in 20/40/20 line (6x13, TR 10) 22100.00 18200.00 + 1.21 Char in 80-char image line (6x13) 25900.00 22100.00 + 1.17 Char in 80-char image line (TR 10) 8510.00 6900.00 + 1.23 Char in 30-char image line (TR 24) 1690.00 851.00 + 1.99 Scroll 10x10 pixels 316.00 234.00 + 1.35 Scroll 100x100 pixels 17.10 14.60 + 1.17 Scroll 500x500 pixels 1680.00 819.00 ++ 2.05 Copy 10x10 from window to window 280.00 126.00 ++ 2.22 Copy 100x100 from window to window 14.80 5.70 ++ 2.60 Copy 500x500 from window to window 2170.00 1110.00 + 1.95 Copy 10x10 from pixmap to window 342.00 173.00 + 1.98 Copy 100x100 from pixmap to window 17.30 8.40 ++ 2.06 Copy 500x500 from pixmap to window 1520.00 807.00 + 1.88 Copy 10x10 from window to pixmap 267.00 125.00 ++ 2.14 Copy 100x100 from window to pixmap 14.70 6.20 ++ 2.37 Copy 500x500 from window to pixmap 2210.00 1010.00 ++ 2.19 Copy 10x10 from pixmap to pixmap 356.00 182.00 + 1.96 Copy 100x100 from pixmap to pixmap 18.90 9.30 ++ 2.03 Copy 500x500 from pixmap to pixmap 1830.00 1020.00 + 1.79 Copy 10x10 1-bit deep plane 275.00 130.00 ++ 2.12 Copy 100x100 1-bit deep plane 20.00 6.70 ++ 2.99 Copy 500x500 1-bit deep plane 2050.00 1350.00 + 1.52 PutImage 10x10 square 65.10 59.20 + 1.10 PutImage 100x100 square 2.90 2.60 + 1.12 PutImage 500x500 square 182.00 149.00 + 1.22 GetImage 10x10 square 21.80 21.40 = 1.02 GetImage 100x100 square 0.90 1.00 - 0.90 GetImage 500x500 square 63900.00 67700.00 - 0.94 X protocol NoOperation 320.00 310.00 + 1.03 GetAtomName 314.00 284.00 + 1.11 GetProperty 5650.00 4730.00 + 1.19 Change graphics context 1450.00 162.00 ++ 8.95 Create and map subwindows (4 kids) 1000.00 219.00 ++ 4.57 Create and map subwindows (16 kids) 1010.00 226.00 ++ 4.47 Create and map subwindows (25 kids) 1040.00 225.00 ++ 4.62 Create and map subwindows (50 kids) 1040.00 223.00 ++ 4.66 Create and map subwindows (75 kids) 1050.00 216.00 ++ 4.86 Create and map subwindows (100 kids) 1050.00 199.00 ++ 5.28 Create and map subwindows (200 kids) 1300.00 206.00 ++ 6.31 Create unmapped window (4 kids) 1420.00 392.00 ++ 3.62 Create unmapped window (16 kids) 1420.00 340.00 ++ 4.18 Create unmapped window (25 kids) 1430.00 350.00 ++ 4.09 Create unmapped window (50 kids) 1440.00 350.00 ++ 4.11 Create unmapped window (75 kids) 1450.00 344.00 ++ 4.22 Create unmapped window (100 kids) 1440.00 325.00 ++ 4.43 Create unmapped window (200 kids) 2820.00 551.00 ++ 5.12 Map window via parent (4 kids) 4550.00 1390.00 ++ 3.27 Map window via parent (16 kids) 4920.00 1440.00 ++ 3.42 Map window via parent (25 kids) 5270.00 1090.00 ++ 4.83 Map window via parent (50 kids) 5410.00 1050.00 ++ 5.15 Map window via parent (75 kids) 5490.00 1110.00 ++ 4.95 Map window via parent (100 kids) 5570.00 936.00 ++ 5.95 Map window via parent (200 kids) 7660.00 1360.00 ++ 5.63 Unmap window via parent (4 kids) 19500.00 1440.00 +++ 13.54 Unmap window via parent (16 kids) 23900.00 1550.00 +++ 15.42 Unmap window via parent (25 kids) 29600.00 1560.00 +++ 18.97 Unmap window via parent (50 kids) 32100.00 1570.00 +++ 20.45 Unmap window via parent (75 kids) 33400.00 1510.00 +++ 22.12 Unmap window via parent (100 kids) 36000.00 1230.00 +++ 29.27 Unmap window via parent (200 kids) 1950.00 185.00 +++ 10.54 Destroy window via parent (4 kids) 2830.00 264.00 +++ 10.72 Destroy window via parent (16 kids) 3000.00 365.00 ++ 8.22 Destroy window via parent (25 kids) 3150.00 310.00 +++ 10.16 Destroy window via parent (50 kids) 3210.00 368.00 ++ 8.72 Destroy window via parent (75 kids) 3240.00 335.00 ++ 9.67 Destroy window via parent (100 kids) 3280.00 249.00 +++ 13.17 Destroy window via parent (200 kids) 695.00 137.00 ++ 5.07 Hide/expose window via popup (4 kids) 1040.00 240.00 ++ 4.33 Hide/expose window via popup (16 kids) 1070.00 239.00 ++ 4.48 Hide/expose window via popup (25 kids) 1080.00 245.00 ++ 4.41 Hide/expose window via popup (50 kids) 1020.00 228.00 ++ 4.47 Hide/expose window via popup (75 kids) 990.00 231.00 ++ 4.29 Hide/expose window via popup (100 kids) 805.00 193.00 ++ 4.17 Hide/expose window via popup (200 kids) 398.00 182.00 ++ 2.19 Move window (4 kids) 363.00 108.00 ++ 3.36 Move window (16 kids) 340.00 78.20 ++ 4.35 Move window (25 kids) 297.00 42.20 ++ 7.04 Move window (50 kids) 253.00 26.10 ++ 9.69 Move window (75 kids) 216.00 16.80 +++ 12.86 Move window (100 kids) 153.00 5.80 +++ 26.38 Move window (200 kids) 5300.00 2470.00 ++ 2.15 Moved unmapped window (4 kids) 5340.00 2470.00 ++ 2.16 Moved unmapped window (16 kids) 5320.00 2470.00 ++ 2.15 Moved unmapped window (25 kids) 5280.00 2460.00 ++ 2.15 Moved unmapped window (50 kids) 5270.00 2440.00 ++ 2.16 Moved unmapped window (75 kids) 5190.00 2440.00 ++ 2.13 Moved unmapped window (100 kids) 5110.00 2370.00 ++ 2.16 Moved unmapped window (200 kids) 1440.00 789.00 + 1.83 Move window via parent (4 kids) 4640.00 1950.00 ++ 2.38 Move window via parent (16 kids) 6360.00 2510.00 ++ 2.53 Move window via parent (25 kids) 9340.00 3730.00 ++ 2.50 Move window via parent (50 kids) 11100.00 4390.00 ++ 2.53 Move window via parent (75 kids) 12000.00 4710.00 ++ 2.55 Move window via parent (100 kids) 14000.00 5110.00 ++ 2.74 Move window via parent (200 kids) 447.00 99.00 ++ 4.52 Resize window (4 kids) 425.00 61.70 ++ 6.89 Resize window (16 kids) 404.00 54.20 ++ 7.45 Resize window (25 kids) 344.00 35.60 ++ 9.66 Resize window (50 kids) 298.00 21.80 +++ 13.67 Resize window (75 kids) 261.00 17.30 +++ 15.09 Resize window (100 kids) 179.00 6.50 +++ 27.54 Resize window (200 kids) 4230.00 626.00 ++ 6.76 Resize unmapped window (4 kids) 4190.00 597.00 ++ 7.02 Resize unmapped window (16 kids) 4160.00 610.00 ++ 6.82 Resize unmapped window (25 kids) 4140.00 602.00 ++ 6.88 Resize unmapped window (50 kids) 4130.00 603.00 ++ 6.85 Resize unmapped window (75 kids) 4080.00 527.00 ++ 7.74 Resize unmapped window (100 kids) 4040.00 541.00 ++ 7.47 Resize unmapped window (200 kids) 330.00 157.00 ++ 2.10 Circulate window (4 kids) 269.00 76.00 ++ 3.54 Circulate window (16 kids) 261.00 114.00 ++ 2.29 Circulate window (25 kids) 228.00 85.70 ++ 2.66 Circulate window (50 kids) 204.00 90.40 ++ 2.26 Circulate window (75 kids) 186.00 82.80 ++ 2.25 Circulate window (100 kids) 148.00 80.30 + 1.84 Circulate window (200 kids) 28100.00 7520.00 ++ 3.74 Circulate Unmapped window (4 kids) 28200.00 5850.00 ++ 4.82 Circulate Unmapped window (16 kids) 28200.00 4990.00 ++ 5.65 Circulate Unmapped window (25 kids) 28200.00 3570.00 ++ 7.90 Circulate Unmapped window (50 kids) 28200.00 2510.00 +++ 11.24 Circulate Unmapped window (75 kids) 27800.00 1850.00 +++ 15.03 Circulate Unmapped window (100 kids) 28200.00 1030.00 +++ 27.38 Circulate Unmapped window (200 kids) Number of categories w/ -ve ratios: 14 Number of categories w/ +ve ratios: 202 Number of categories w/ equal ratios: 6 -- ______________________________________________________________________ Patrick J. Naughton ARPA: naughton@sun.com Window Systems Group UUCP: ...!sun!naughton Sun Microsystems, Inc. AT&T: (415) 336 - 1080
laukee@canon.co.uk (David Lau-Kee) (10/12/90)
djk@cs.columbia.edu (David Kurlander) writes: >The advertisements for the newest version of OpenWindow/XNeWS claim >that it's five times faster than the last release. Would either >someone at Sun or people that are now using the new version elaborate >on this. Has low level imaging been sped up, or just window creation >and manipulation? Purely subjective, so your mileage may vary... The imaging seems to be no faster, but the window creation, etc. can be faster. The '5 x' claim seems a little outlandish to me, but I guess that it depends a great deal on what hardware you've got. On a 4/110 with CG4 and 16Mb we noticed an improvement in speed at the window level, but on a 4/60 with CG6+GX and 16Mb we noticed little or no improvement. I hear from others that OW2 gains most in 8Mb environments, which I don't doubt since the server is much smaller. Some things slow down. Text, for example, seems to be slower. I think this is an X conformance load. I'd say that whilst switching from Sunview to OW1 gave an agonising drop in subjective, interactive, window-level performance, switching from SV to OW2 is merely painful, and from OW1 to OW2 could actually be quite pleasant. Bite the bullet. It could be worth it. ------------- David Lau-Kee Canon Research Centre Europe, 17/20 Frederick Sanger Rd, Surrey Research Park, Guildford, Surrey, GU25YD, UK. NRS: laukee@uk.co.canon, INET: laukee%canon@nsfnet-relay.ac.uk UUCP: laukee@canon.uucp, PATH: ..!mcsun!ukc!uos-ee!canon!laukee Tel: +44 (0) 483 574325 Fax: +44 (0) 483 574360