Reporting situation

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Reporting situation

Smalltalkiano
Sebastian,

Here is a reply from our chief technical guy:

"The VM is attempting to reserve (not commit) virtual memory space for an
object table large enough to hold 8 million objects. This allows the object
table to grow. The fact that it is failing to do so suggests that there is
insufficient _virtual memory_ available on the machine at the time. The VM
compacts the OT on an image save by allocating a new one and copying over
the occupied slots (the same is done by a compacting GC), and consequently
for a short duration two OTs are allocated. Each OT requires 96Mb of virtual
memory address space (each entry is 12 bytes). I don't think this has to be
backed up with actual storage until it is committed. In fact each program
should be able to use up to 2Gb of virtual address space. The only effect of
reserving memory in terms of resource usage is the space required to
maintain the page tables.

I'm not entirely surprised this might happen on a 128Mb Win98 box - he might
either be running too much stuff and have insufficient swap space, or
(perhaps more likely) another program that is leaking one or other OS
resource used to maintain virtual memory. Unfortunately one doesn't have the
NT task manager available to make diagnosis easier, but there are probably
tools available.

This Wiki page explains how to increase the maximum OT size, but the same
technique could be used to reduce it:
http://www.object-arts.com/wiki/html/Dolphin/ImplementationLimits.htm

(Of course he could have just evaluated: 'Object allSubinstances size' to
get the number of objects)."

I hope that helps.

BTW, these sorts of question should really be posted to the Dolphin
newsgroup (comp.lang.smalltalk.dolphin) so all our users can share in the
replies.

Best Regards,

Andy Bower
Dolphin Support
http://www.object-arts.com
---
Are you trying too hard?
http://www.object-arts.com/Relax.htm
---

----- Original Message -----
From: Sebastian ____S____
To: [hidden email]
Cc: Andres Shokida ; Marcelo Cortez
Sent: Tuesday, September 04, 2001 6:13 PM
Subject: Reporting situation


Dear Andy,

    sometimes we experiment that a Dolphin image has a strange pathology.

    It can't save and pop ups a little dialog saying:

    "Unable to reserve memory for 8388608 objects
    Please reduce maximum OT size and restart.
                "Accept"                                      "

    Then it crashes...

    We are working with Win98SE en espaƱol (spanish version) in a P3 800
MHz, 128MB RAM, 30 GB HD..

    On this pathologic image (wihout saving) I have evaluated this:

    all := Object withAllSubclasses.
    objects := 0.

    all do:[ :class | objects := objects + (class allInstances size) ]

    then objects was: 201619

Happily we work with STS and version our packages, so we can "get up"
quickly.

Best regards,


Sebastian

[hidden email]
[hidden email]
ICQ#4610044