The image is set to 16bpp Display instead of the more traditional 8bpp.
The vm simulator needs 'From Squeak 2.3 beta of Nov 25, 1998 on 29 November 1998 at 10:48:42 am'!
!InterpreterSimulator methodsFor: 'other primitives' stamp: 'TPR 11/28/1998 21:58'! primStringfindSubstringinstartingAtmatchTable ^ self primitiveFail! !
adding in order to work.
Something odd is going on with the Tracer -- it produces an image somewhat bigger than 6Mb, which starts up ok and saves back to 4-ish MB. Rather spoils the 'coffee-break garbage collector' story doncha think? It seems to be a recent problem, as older images clone same/smaller as appropriate. I though it might be related to the Display size/depth, but seem to have ruled that out. Maybe the WeakArrays need more careful cloning?
While tracking down prolbems with cloingetc, I found this pair of changes useful:- it saves a bit of time when looking for method versions by not opening a browser if there is only the one version. I'm sure it could be done more prettily...
'From Squeak 2.3 beta of Nov 25, 1998 on 28 November 1998 at 5:45:52 pm'!
!ChangeList methodsFor: 'accessing' stamp: 'TPR 11/28/1998 17:38'! listHasSingleEntry "does the list of changes have only a single item?" ^list size = 1! !
!ChangeList class methodsFor: 'public access' stamp: 'TPR 11/28/1998 17:45'! browseVersionsOf: method class: class meta: meta category: category selector: selector | changeList | Cursor read showWhile: [changeList _ self new scanVersionsOf: method class: class meta: meta category: category selector: selector]. changeList ifNil: [self inform: 'No versions available'] ifNotNil: [changeList listHasSingleEntry ifTrue:[^self inform: 'No other versions of this method']. self open: changeList name: 'Recent versions of ' , selector multiSelect: false]! !
tim
Tim,
Something odd is going on with the Tracer -- it produces an image somewhat bigger than 6Mb, which starts up ok and saves back to 4-ish MB. Rather spoils the 'coffee-break garbage collector' story doncha think? It seems to be a recent problem, as older images clone same/smaller as appropriate. I though it might be related to the Display size/depth, but seem to have ruled that out. Maybe the WeakArrays need more careful cloning?
This might be a problem (I actually never used the tracer) but I'd think that the tracer probably doesn't compress any forms which makes quite a bit of image space.
Andreas
On Sun 29 Nov, Andreas Raab wrote:
This might be a problem (I actually never used the tracer) but I'd think that the tracer probably doesn't compress any forms which makes quite a bit of image space.
Ooh, yeah, maybe so. Though I can't easily see that making nearly two meg of difference; that would be a lot of bitmaps... but it has to be coming from somewhere, so who knows? I'll see if I can measure it.
tim
Something odd is going on with the Tracer -- it produces an image somewhat bigger than 6Mb, which starts up ok and saves back to 4-ish MB. Rather spoils the 'coffee-break garbage collector' story doncha think? It seems to be a recent problem, as older images clone same/smaller as appropriate. I though it might be related to the Display size/depth, but seem to have ruled that out. Maybe the WeakArrays need more careful cloning?
Methinks it's because Squeak compresses all its Forms in a normal snapshot, but the image running the systemTracer will have expanded many of them (such as fonts). I would try Form shutDown at the beginning of writeClone. Also, I'm not sure if we clamp the displayScreen. If not, that would make a difference, or you could at least go to color depth 1 before writing the image.
Hope this helps.
- Dan
On Sun 29 Nov, Dan Ingalls wrote:
Methinks it's because Squeak compresses all its Forms in a normal snapshot, but the im age running the systemTracer will have expanded many of them (such as fonts).
The fact that there are 1.7+Mb of Bitmap in the image looks very likely to be the culprit!
I would try Form shutDown at the beginning of writeClone. Also, I'm not sure if we clamp the displayScreen. If not, that would make a difference, or you could at least go to color depth 1 before w riting the image.
Substituting the Display is definitely a good option, and an easy one (I have some Tracer hacks that make it very easy to do a substitution of that sort) but I think some care is probably needed about shutting down Form -- the Tracer does some displaying as it goes and I can image some possible problems if the Display and a font are unhibernated in the middle of tracing them. I'll see how it goes before worrying too much!
I love the Tracer. You can do so many unnatural thins with it....
tim
squeak-dev@lists.squeakfoundation.org