[squeak-dev] What Error should I expect when I fill up the image with objects?

Bruce O'Neel bruce.oneel at pckswarms.ch
Wed Oct 27 18:55:36 UTC 2021


Hi,

Most Linux systems will overcommit memory.   Overcommitting memory is
when the total of the allocation requests is greater than the sum of
physical RAM and swap space.

This lets C programmers be sloppy.  But the OS had made a promise
that it hopes not to keep.  If everyone actually tries to use the
memory they have asked for then you are in trouble and the OS will
give you a segfault.

https://www.kernel.org/doc/html/latest/vm/overcommit-accounting.html

MacOS will just keep allocating swap files up to some silly number but
normally you will not reach this silly number of swap files since
everything will get so slow that the system will be unusable.

Apparently windows works similar to MacOS.

https://superuser.com/questions/1194263/will-microsoft-windows-10-overcommit-memory#1228040

cheers

bruce

On 2021-10-27T16:47:22.000+02:00, Eliot Miranda
<eliot.miranda at gmail.com> wrote:

> Hi Timothy,
> 
>>  On Oct 27, 2021, at 7:26 AM, gettimothy via Squeak-dev
>>  <squeak-dev at lists.squeakfoundation.org> wrote:
> 
>>  
>>  
>>  Hi Folks,
>>  
>>  I am doing an experiment to load a bunch of objects into my
>>  Squeak6/Spur image.
>>  
>>  What should I expect if it fills up?
>>  
>>  Will it throw a SmallTalk error with a debugger?
> 
> Yes, a low space error.  Search for lowspace in a Message Names and
> you should find the low space process, etc.  look also at the
> allocation tests.  However…
> 
>>  Or should I expect it to segfault or something.
> 
> Not segfault, but something.  In practice Spur asks for more memory
> from the OS.  There is an optional limit on old space size.  If
> set then you should see a low space signal.  If not set the system
> will simply slow down as the OS continues to provide memory and
> start to page.
> 
> The low space mechanism can work, but only if the vm has a good
> estimate of how much memory it can ask for.  Unfortunately I’m
> unaware of APIs the vm can use to derive this estimate.  So one is
> left with having to set thd limit manually.
> 
>>  Thank you for your time.
> 
> HTH,
> Eliot
> 
> _,,,^..^,,,_ (phone)
> -------------------------

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20211027/6ecd9bd4/attachment.html>


More information about the Squeak-dev mailing list