From: Stefan Bellon <sbellon@sbellon.de>
Subject: Re: Finding out minimal allocation unit
Date: Thu, 05 Apr 2007 08:12:26 +0200
Date: 2007-04-05T08:12:26+02:00 [thread overview]
Message-ID: <4ecea2f308sbellon@sbellon.de> (raw)
In-Reply-To: euupa4$t39$1@jacob-sparre.dk
Randy Brukardt wrote:
> But that isn't really a meaningful question. It clearly depends on
> the storage pool, and if the storage pool comes from somewhere else,
> it may even depend on the OS version you are running. For instance,
> the standard storage pool in Janus/Ada uses a standard Windows heap.
> Those exhibit vastly different behavior on Windows 95 than Windows
> 2000, and somewhat different on almost every version of Windows.
I don't agree that it isn't a meaningful question because of that.
Quite the contrary. _Because_ we realize that there are differences,
we'd like to find out the allocation strategy in order to optimize for
that.
> Rule of thumb: if the behavior of the standard storage pool actually
> makes a difference in your application, then don't use it!
Ok, this is an alternative to think about.
> Write your own storage pool that has the behavior you need. It's
> relatively easy to do, especially if you have fixed size elements.
> And then you can effectively use an array to allocate elements and
> still have cheap insertion and deletion and reordering.
I'm a bit unclear about how to do it. Do I implement the Allocate using
the standard storage pool (i.e. using 'new') or do I interface it
directly to the underlying C library (i.e. using 'malloc')? In both
cases I still have the same problem as above.
Are there examples of such a storage pool implementation around?
--
Stefan Bellon
next prev parent reply other threads:[~2007-04-05 6:12 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-04-03 12:43 Finding out minimal allocation unit Stefan Bellon
2007-04-03 13:22 ` Georg Bauhaus
2007-04-03 13:28 ` Stefan Bellon
2007-04-03 13:34 ` Martin Krischik
2007-04-03 13:37 ` Stefan Bellon
2007-04-03 15:17 ` Markus E Leypold
2007-04-04 17:16 ` Robert A Duff
2007-04-05 8:55 ` Markus E Leypold
2007-04-05 17:55 ` Stefan Bellon
2007-04-06 1:40 ` Randy Brukardt
2007-04-06 8:06 ` Stefan Bellon
2007-04-06 11:06 ` Markus E Leypold
2007-04-03 23:53 ` Randy Brukardt
2007-04-05 6:12 ` Stefan Bellon [this message]
2007-04-05 7:35 ` Martin Krischik
2007-04-05 17:58 ` Stefan Bellon
2007-04-07 9:27 ` Martin Krischik
2007-04-10 21:42 ` Robert A Duff
2007-04-05 13:07 ` Robert A Duff
2007-04-05 18:02 ` Stefan Bellon
2007-04-06 1:31 ` Randy Brukardt
2007-04-06 8:10 ` Stefan Bellon
2007-04-06 17:17 ` Simon Wright
2007-04-06 12:38 ` Stephen Leake
2007-04-03 14:12 ` Larry Kilgallen
2007-04-03 13:48 ` Robert A Duff
2007-04-03 16:45 ` Dmitry A. Kazakov
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox