Path: utzoo!attcan!uunet!ncrlnk!ncrcae!hubcap!gatech!bloom-beacon!EXPO.LCS.MIT.EDU!rws From: rws@EXPO.LCS.MIT.EDU (Bob Scheifler) Newsgroups: comp.windows.x Subject: Re: XPutPixel Message-ID: <8811151539.AA02975@EXPO.LCS.MIT.EDU> Date: 15 Nov 88 15:39:56 GMT References: <8811151509.AA07399@godot.radonc.unc.edu> Sender: daemon@bloom-beacon.MIT.EDU Organization: The Internet Lines: 36 You seem to suggest it would be less efficient to have the server (which may have access to some specialized image munging hardware, and is in a much better position to make other hardware-specific optimizations) do this than to have clients do it. Aside from the increased wire traffic I don't see how that can be. The tradeoff isn't absolute, but decreasing server processing time increases overall throughput when there are distributed clients that can do the conversions concurrently (quite possibly on separate processors), and decreasing the server time also improves the perceived responsiveness (yes, some nice pre-emptive scheduling in the server would help this, but ...). If your position is that always sending images as (unsigned long) *REQUIRES* XPutPixel-like handling of every pixel on the server side - handling which cannot be sidestepped - then I do see some rational for retaining the current model. It will require conversion for most hardware that I am aware of. But, again, it is not clear that building conversions into the server *necessarily* removes a client's option to make non-portable assumptions in the name of speed. I didn't argue against this point. I *did* argue that a more reasonable implementation of XPutPixel in Xlib, taking advantage of the mechanisms that are there, could remove the need for much client code to have to make performance assumptions. Yes, I know they're important, but then so are 12-bit CT images. Sure. It's also good to keep in mind that XImages were not designed to handle real image processing needs (which is not to say that it shouldn't do what it does a whole lot faster).