devin@topologixtopologix.com (Devin Hooker) (10/12/88)
I have seen discussion about speeding up the x server on sun 3's, and I was wondering how to do this? AtDhVaAnNkCsE. -Devin -- Devin Hooker Software Engineer 4860 Ward Rd. Denver, Co. 80033 (303) 421-7700
rgs@corona.megatek.uucp (Rusty Sanders) (10/13/88)
From article <163@topologixtopologix.com>, by devin@topologixtopologix.com (Devin Hooker): > I have seen discussion about speeding up the x server on sun 3's, and I was > wondering how to do this? AtDhVaAnNkCsE. > I presume you're talking about color X on a sun (since mono isn't toooo bad). First off, you wait for X11R3 to be release, since one of the things you're likely to want to speed up is already sped up some. With that in hand, you start a lot of coding. First thing to do is get hold of the purdue mods for mono X and do similar things in color X. That means changing cfbmskbits.h and cfbmskbits.c. While you're in there do something about the PFILL macro (use a lookup table instead of logic, it's only 256 words). That will get you about 6%-10%, in general. *Whoopie*, that's the end of the easy things to do. The first real specific place is glyph rendering. Look at cfbteglyphblt.c . Currently it paints glyphs left to right, top to bottom. Change it so it goes the other way. allowing you to calculate the masks only once. Now, break out the getstipplepixel calls into real code, move anything invarient you can out of the loop, declare registers to point at the data, and otherwise optimize the bejeezus out of the thing. After that trivial excersize create cfbimggblt.c and cfbplygblt.c, based on a combo of cfbtegblt.c and the corresponding mfbimggblt.c and mfbplygblt.c. After that you'll have moderatly fast glyphs (probably about 1/2 to 1/3 as fast as what I do, but I'll leave it as an extra credit effort to figure out how that works, sorry). Next thing is probably line drawing (if you use the window manager any, you'll notice it's maddening). That one's easy. Just steal mfbline.c, mfbhrzvert.c, and mfbbres.c and modify them to peices. Remember, don't ever use a macro without known EXACTLY what code it generates. If you want good performance, don't do the same calculation twice. You may want to speed up tiled drawing and solid area drawing. Those are in Those are in cfbfillsp.c. By now, you should be getting a good feel for what to do, so I won't go into it. That should give you enough for a goodly period of time. I wish that I could contribute the stuff I've done to get good speed out of the server, but my company (rightly so) believes it's proprietary. Guess you'll just have to buy our sun based system :-) (Actually, I do use some hardware on our FBM which gives me very good scroll speed, fast and painless cursoring, and a minor speedup on clipping to odd pixel boundaries). I suspect the reason that nobody's gone and contributed a faster version of X for the sun is that it's non trivial to get there (actually, for any cfb based system). Any company which invests the effort will probably want to keep that advantage. At the moment, then, your only option is to roll up your sleeves and dig in to it. (By the way, your system name "topologix" is 9 characters long. That upsets many uucp sites. By the time the message got to me you return address was devin@topologixtopologix.com , evidently having one of its "."s striped. I would suggest you change the name of your site, 8 characters is the most allowed, I believe) Rusty Sanders, Megatek Corp. --> rgs@megatek or... ...ucsd! ..hplabs!hp-sdd!megatek!rgs ...ames!scubed!
rusty@grunt.berkeley.edu (10/14/88)
In article <669@stiatl.UUCP> meo@stiatl.UUCP (Miles O'Neal) writes: >The path of least resistance is to await the X11/NeWS release due out >(theoretically) Q1/88... Last I heard, it's slower than the x11r2 sun server, and you have to buy it; it won't be part of the SunOS distribution (neither of which isn't surprising since NeWS is slow and isn't part of SunOS). -------------------------------------- rusty c. wright rusty@violet.berkeley.edu ucbvax!violet!rusty
peter@polygen.uucp (Peter Ent) (10/14/88)
I need info on another performance "enhancement" for the Sun X11 Server: how do you make it do save_under? According to the X macro, DoesSaveUnder, it does not do save_under (nor backing_store). Doing the backing store yourself (via Pixmaps) seems slow. Does anyone know if save_under can be turned on or is in a future release? Peter Ent Polygen Corp. Waltham, Ma. (617) 890-2888
RWS@ZERMATT.LCS.MIT.EDU (Robert Scheifler) (10/14/88)
Date: 14 Oct 88 12:55:49 GMT From: polygen!peter@bu-cs.bu.edu (Peter Ent) how do you make it do save_under? Get R3 when it comes out.
casey@admin.cognet.ucla.edu (Casey Leedom) (10/18/88)
| From: rgs@corona.megatek.uucp (Rusty Sanders) | | | From: devin@topologixtopologix.com (Devin Hooker) | | | | I have seen discussion about speeding up the x server on sun 3's, and I | | was wondering how to do this? | | [lot of good information on how to speed up the color Sun X server] | | I wish that I could contribute the stuff I've done to get good speed out | of the server, but my company (rightly so) believes it's proprietary. | Guess you'll just have to buy our sun based system :-). | | I suspect the reason that nobody's gone and contributed a faster version | of X for the sun is that it's non trivial to get there (actually, for any | cfb based system). Any company which invests the effort will probably want | to keep that advantage. At the moment, then, your only option is to roll | up your sleeves and dig in to it. I don't mean to start a flame war here, so please take my comments in the ``questioning mode'' that they're offered. It strikes me that MegaTek got an awful lot of free software (X11) on which to base their speeded up SUn server work. Much of that free software was even donated by some of their competitors. Is it really fair to hold out on the improvements that they've made? After all, everyone else across the net is donating the fixes and improvements they make to the X11 distribution (which again MegaTek benefits from). Thanks for all the hints on how to speed up the Sun server, but I hope that MegaTek reconsiders their position on releasing your work. This is especially true if, as you hint, some of the improvements are applicable to any cfb based server. Casey -------- I have a friend who is planning on voting for Bush because ``Bush looks like a Party Man - someone who will follow whatever the Party Line is.'' Now, while this was very perceptive of my friend (Bush seems to be willing to say anything to get elected - no matter how at odds with what he may have said before), I call this a bug, not a feature ...
dtucker@cod.NOSC.MIL (David Tucker) (10/28/88)
What are Purdue modifications? Will they improve mono x performance on SUN3s? Where would one find these modifications?