Re: Memory limits?

Derek Zhou via Users mailing list for the GNU Smalltalk environment <[email protected]>
Newsgroups gmane.comp.lang.smalltalk.gnu.general
Message-ID <[email protected]>
Thomas Worthington writes:
>
> The test box has 8G of RAM and the system I want to run it on has 680GB of RAM, so it would be nice to be able to use it. Is there some hard-coded limit in the source which I can lift or am I stuck? Or just missing something?

Are you using a lot of objects? GNU smalltalk has a OOP_TABLE which is
limited in size by default:

libgst/oop.h:

/* The number of OOPs in the system.  This is exclusive of Character,
   True, False, and UndefinedObject (nil) oops, which are
   built-ins.  */
#define INITIAL_OOP_TABLE_SIZE  (1024 * 128 + BUILTIN_OBJECT_BASE)
#define MAX_OOP_TABLE_SIZE      (1 << 23)

So the OOP_TABLE has an initial size of 128K items and will only grow as
high as about 8M items. The limit can be lifted by editing the source
but I am not sure what else could be the next limit.

On top of that, the generational GC engine that GNU Smalltalk does not
handle very large object very well.

Anyway, if you really have to use more than a few millions of objects or
multiple gigabytes of memory for your application, GNU Smalltalk is not
the best tool.

Derek
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.