[comp.windows.misc] Performance Analysis of X windows

pushp@nic.cerf.net (Pushpendra Mohta) (07/17/90)

Hi

I am interested in pursuing the performance of X windows  with
repect to the communication overhead and local/remote processing
split.

1. Where is the protocol definition documented ?

2. Have any studies been conducted on the  topic posed above or
   similar topics  ?

3. Do different vendor realizations differ in  a non-trivial manner
   with respect to the communication/processing split posed above ?
   Do different releases ( i.e R3/R4) differ in this matter ?

4. Have any studies been conducted on the  performance
   of X or other windowing systems  on wide area networks like
   the Internet ?
   (I realize that this is a very vague question ,
    I have not defined performance here, but I am looking 
    for *ANY* studies ) 


5. Is this a valid performance question ? What are other performance
   parameters of interest to the community ? ( Read  to mean - Am I
   asking stupid questions ? :-) )

6. If this is not the appropriate forum for asking these questions,
   what is ?

Email replies will be appreciated. Enough interest will warrant
posting a summary.

Thank You

--pushpendra
CERFNet/SDSC/UCSD

   

jg@crl.dec.com (Jim Gettys) (07/19/90)

To answer your questions:

1) the protocol spec is in the X distribution itself, available in a wide
variety of places.  You can also buy the Digital Press book where it
is present (and it has not changed from that version in any way but
clarification
of wording).

2) the best performance study I've seen was one done inside Digital; various
people beat up on the author to publish the results, but I haven't seen that
that has happened.  This was mostly oriented toward LAN and campus area use.

3) I don't think there is very much difference from vendor to vendor on
communcation processing under Unix and TCP/IP.  I think there may be signficant
differences between OS's and transports (for example VAX/VMS using DECnet).
PC's and the like probably run with much smaller buffers, since they are memory
starved.

To first order, there should be relatively little change between R3 and R4;
none at the X protocol level itself, but there may have been some buffering
changes in either Xlib or the server that might affect how the X protocol ends
up being split up into packets over TCP.  Of course, the underlying TCP
implementation or other network protocol implementation may also affect what
packets actually appear on the network.  Remember that X is a streaming
protocol,
not an RPC system.

4) I am not aware of any formal performance studies of X or other
network window
systems over WANS.  Certainly many of us have used and continue to use X over
such networks and have some gut feel for such situations.  For example, latency
is often a bigger issue than bandwidth for usable feel, and satellite lines
are not appreciated (again for latency issues.

5) I'm not sure what question you are referring to.  Interesting questions
include how well our buffering strategies are working in the server and
library,
how well TCP implementations are working, what kind of effect different
transmission policies have (can be dramatic, from 4.3BSD beta experience; a
socket option got added for X's benefit).  The other major question is who
would volunteer to do the work that proper performance analysis requires;
while I and others might be willing to kibitz, I certainly am not going to
spend large amounts of time on the topic (I already gave at the bloodbank, back
in X3-X6 days...).

6) comp.windows.x might be a bit more appropriate.........

			Jim Gettys
			Digital Equipment Corporation
			Cambridge Research Lab.