Best Squeak setup for servers

John M McIntosh johnmci at smalltalkconsulting.com
Fri Nov 14 22:21:18 UTC 2003


I have a patch around (obsolete now I'd guess) let's see ah yes
http://www.smalltalkconsulting.com/papers/tipsAndThoughts/source/ 
squeakDeferred.cs

Don't file this in.

However what it did was track the damaged area for screen updating and  
ensured a flush of the damaged area was done every N milliseconds.
One problem with how Squeak does things is that redrawing of a complex  
object is lots of bitblting to the screen. That results in
lots of screen updates that need to flow over the long wire with TCP/IP  
delay overhead which results in poor performance.

Thus if someone wants this, they should consider taking this changeset  
and see what happens. Technically you could change the
N miliseconds to zero to ignore any caching.


Speaking of which I did rewrite the carbon Mac VM to attempt to use  
Quartz drawing via
         CGContextClipToRect(context, clip);
         CGContextDrawImage(context, rectangle, image);
         CGContextFlush(context);
This seems ok. However as Ian had told me a few weeks back, his concept  
of moving bytes to the screen is way faster (16bit>16bit) draw, but
16bit-32bit using CGContextDrawImage is 100% slower! So there is no  
benefit for using CGContext calls versus memcpy.  This stuff exists in
the mac platform ioShowDisplay() which is called via the routines  
mentioned above.

I should mention Karsten Wolf <karstenw at eichhorn-frankfurt.de> has been  
working on this issue of drawing, reducing the number of draws, yet  
preserving the feel and I believe he has found it a challenge.


On Nov 14, 2003, at 9:36 AM, Brian Brown wrote:

> What kind of performance/resource usage do you get running Squeak  
> under a VNC server? I tried a while back (~6months) on FreeBSD and the  
> client performance seemed abyssmal, but I'm willing to try again :)
>
> Brian
>
--
======================================================================== 
===
John M. McIntosh <johnmci at smalltalkconsulting.com> 1-800-477-2659
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
======================================================================== 
===




More information about the Squeak-dev mailing list