Mac carbon VM 3.8.6b2 Experimental

Bruce ONeel edoneel at sdf.lonestar.org
Wed Jan 26 12:43:41 UTC 2005


Thanks, this now lives at:

ftp://st.cs.uiuc.edu/Smalltalk/Squeak/3.8/mac/squeak3.8.6b2-mac-vm-app.z
ip

cheers

bruce

John M McIntosh <johnmci at smalltalkconsulting.com> wrote:
> Date: Tue, 25 Jan 2005 21:23:14 -0800
> From: John M McIntosh <johnmci at smalltalkconsulting.com>
> Subject: Mac carbon VM 3.8.6b2 Experimental
> To: The general-purpose Squeak developers list <squeak-dev at lists.squeakfoundation.org>
> reply-to: The general-purpose Squeak developers list <squeak-dev at lists.squeakfoundation.org>
> 
> As pointed out earlier macintosh os-x Carbon VMs have performance  
> problems when rendering lots of little pixels areas. This is because at  
> the end of moving bits from Squeak's object memory to the screen buffer  
> we must ask the os-x display process to flush and draw the bits on the  
> screen. This inter-process call is very expensive and slow as compared  
> to the original drawing. Both Karsten Wolf and I have been thinking  
> about this issue for years, however over the weekend I
> managed to code up an acceptable (I think) solution.
> 
> see http://homepage.mac.com/johnmci/experimental
> Squeak 3.8.6Beta2.app.sit
> 
> or let's see if this new service offering works
> ftp://ftp.smalltalkconsulting.com/Squeak 3.8.6Beta2.app.zip
> 
> This os-x only carbon VM has changes to:
> 
> a) Limit screen flushes to 50 to 90 times per second by consolidating  
> the drawing rectangle to the largest enclosing one in the sequence.
> 
> b) Invoke LockPixels only 50 to 90 times per second  instead of doing a  
> lock/unlock on each draw operation.
> 
> As pointed out by Karsten Wolf karstenwo at web.de the following code  
> sample takes 58 seconds to run with a 3.8.5b1 VM,
> with a 3.8.6b2 VM it's 0.8 seconds.
> 
> Time millisecondsToRun:[
> 	| b |
> 	b _ Pen new.
> 	Display fillWhite.
> 	b place:(Display boundingBox bottomLeft).
> 	b hilbert: 7 side: 2]
> 
> 
> I'll welcome people to try it out and report any issues, also if it  
> crashes please send me the os-x crash logs.
> Once the smoke clears I'll build one with the mac classic support.
> 
> --
> ======================================================================== 
> ===
> 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