[squeak-dev] About unloading of packages in the most recent
Squeak 4.1 trunk
Levente Uzonyi
leves at elte.hu
Mon Aug 23 22:04:12 UTC 2010
On Mon, 23 Aug 2010, Casey Ransberger wrote:
> Levente: totally. I mainly just wanted
>
> a) image can start on Cog w/o segfaulting
>
> b) doesn't need a long lengthy set of updates before being caught up with trunk
>
> The cleanup methods will be run before we ship anyway:)
That's ok, but these prebuilt images could be a bit smaller this way.
Levente
>
> On Aug 23, 2010, at 4:29 AM, Levente Uzonyi <leves at elte.hu> wrote:
>
>> On Mon, 23 Aug 2010, Hannes Hirzel wrote:
>>
>>> On 8/23/10, Tobias Pape <Das.Linux at gmx.de> wrote:
>>>>
>>>> Am 2010-08-23 um 11:14 schrieb Tobias Pape:
>>>>
>>>>> Hi,
>>>>>
>>>>> Am 2010-08-23 um 11:06 schrieb Hannes Hirzel:
>>>>>
>>>>>> and tried
>>>>>> SmalltalkImage unloadAllKnownPackages
>>>>>
>>>>> Do
>>>>> Smalltalk unloadAllKnownPackages
>>>>>
>>>>> instead, since Smalltalk is the sole instance
>>>>> of SmalltalkImage.
>>>
>>> Thank you for point this out.
>>>
>>> In fact Smalltalk is the global variable which references
>>> SmalltalkImage current
>>>
>>> So I can do as well
>>>
>>> SmalltalkImage current unloadAllKnownPackages
>>>
>>>
>>> Which I did
>>>
>>> Squeak4.2-10382-alpha.image went from 16998KB
>>
>> Hm, I think Casey forgot to do [Smalltalk cleanUp: false] before saving the image. Doing that saves 2.8MB.
>>
>>
>> Levente
>>
>>>
>>> down to
>>> 10277kB
>>> (file sizes measured on Windows machine)
>>>
>>>>> So Long,
>>>>> -Tobias
>>>>>
>>>
>>>
>>>
>>>> Addendum:
>>>> It works.
>>>> resulting file size: 10411140, about 10,4 MB.
>>>> Nice.
>>>>
>>>> Btw, this script probably needs updating, The Help
>>>> browser, eg, does not get unloaded (same for TrueType)
>>>
>>> Yes, I tried it for the HelpSystem
>>>
>>> I added three more entries to the literal array in the method
>>>
>>> "Go unloading"
>>> #( 'ReleaseBuilder' 'ScriptLoader'
>>> '311Deprecated' '39Deprecated'
>>> 'Universes' 'SMLoader' 'SMBase' 'Installer-Core'
>>> 'VersionNumberTests' 'VersionNumber'
>>> 'Services-Base' 'PreferenceBrowser' 'Nebraska'
>>> 'ToolBuilder-MVC' 'ST80'
>>> 'CollectionsTests' 'GraphicsTests' 'KernelTests' 'MorphicTests'
>>> 'MultilingualTests' 'NetworkTests' 'ToolsTests' 'TraitsTests'
>>> 'SystemChangeNotification-Tests' 'FlexibleVocabularies'
>>> 'EToys' 'Protocols' 'XML-Parser' 'Tests' 'SUnitGUI',
>>> 'HelpSystem-Core', 'HelpSystem-Tests', 'HelpSystem-Project'
>>> ) do:[:pkgName| (MCPackage named: pkgName) unload].
>>>
>>>
>>> The image is now
>>> 10174kB (=100kB less10277kB).
>>>
>>> Probably not worth the effort at this time.
>>>
>>> Questions
>>> 1) Which are the packages which are big and easy to unload.....?
>>> 2) Who does an attempt to unload the TrueType?
>>>
>>>
>>> --Hannes
>>>
>>>
>>
>
>
More information about the Squeak-dev
mailing list
|