comp.lang.ada
 help / color / mirror / Atom feed
From: "Yannick Duchêne (Hibou57)" <yannick_duchene@yahoo.fr>
Subject: User Defined Storage Pool : did you ever experiment with it ?
Date: Sat, 22 Jan 2011 01:04:41 +0100
Date: 2011-01-22T01:04:41+01:00	[thread overview]
Message-ID: <op.vpont3pqule2fv@garhos> (raw)


Hi,

Ada has provision for user defined storage pool, that is, an application  
may have a (or multiple) custom implementation of a heap or like for any  
kind of object.
http://www.ida.liu.se/edu/ugrad/progkon/Ada/ada-doc/LRM95/rm95html/rm9x-13-11.html
(from an uknown site, AdaIC server seems down today)

I don't feel to remember I ever see a single Ada source with some use of  
this. Is this just an not enough known feature, or does it mean there is  
not so much benefit to use it ? Or else, may be this could be beneficial  
but no one never go up to there (no evaluation of this option, or anything  
else) ?

Straightforwardly, I may think about some examples where this may be  
beneficial (you may say if you agree or not):
* Avoid memory fragmentation due to objects of different size (one pool  
with all object of the same size may limit the overall memory  
fragmentation)
* Help the CPU cache to be more efficient (if a pool is created for the  
most accessed type of objects, there may be grouped together in a single,  
thus better use of CPU internal cache)
* Profit from noticeable behavior of some process, like one which most of  
time allocate/deallocate like a stack would while not being really a stack  
(so could not be allocated on the stack).

Or may be basic containers just make user storage pool unnecessary ? (for  
containers holding object values, not reference)
Or is the typical head implementation clever enough is all cases to avoid  
the need of user defined storage pools ?

Just wondered why, while memory resource is so much important, and user  
defined storage pool does not look like an obscure feature, I've never  
seen it at work in multiple sources I could read from the web.


-- 
Si les chats miaulent et font autant de vocalises bizarres, c’est pas pour  
les chiens.

“I am fluent in ASCII” [Warren 2010]



             reply	other threads:[~2011-01-22  0:04 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-22  0:04 Yannick Duchêne (Hibou57) [this message]
2011-01-22  0:55 ` User Defined Storage Pool : did you ever experiment with it ? Adam Beneschan
2011-01-22  1:42   ` Yannick Duchêne (Hibou57)
2011-01-22  5:19   ` Randy Brukardt
2011-01-22  8:49 ` Dmitry A. Kazakov
2011-01-22  9:47 ` User Defined Storage Pool : Example anon
2011-01-22  9:54 ` User Defined Storage Pool : did you ever experiment with it ? AdaMagica
2011-01-24  9:57   ` Yannick Duchêne (Hibou57)
2011-01-24 10:48   ` Mark Lorenzen
2011-01-22 15:13 ` Simon Wright
2011-01-24  9:56   ` Yannick Duchêne (Hibou57)
2011-01-24 16:09     ` Simon Wright
2011-01-24 23:58   ` Yannick Duchêne (Hibou57)
2011-01-22 22:17 ` Fritz Wuehler
2011-01-24  9:52   ` Yannick Duchêne (Hibou57)
2011-01-24 14:20     ` Bill Findlay
2011-01-24  9:25 ` Ludovic Brenta
2011-01-24  9:43   ` Yannick Duchêne (Hibou57)
2011-01-24 13:43     ` Emmanuel Briot
2011-01-24 16:48       ` Dirk Craeynest
2011-01-25  1:16         ` Yannick Duchêne (Hibou57)
2011-01-24 11:46 ` Jacob Sparre Andersen
2011-01-24 23:51   ` Yannick Duchêne (Hibou57)
2011-02-10  7:59     ` Jacob Sparre Andersen
2011-02-13 15:56       ` AdaMagica
2011-02-13 19:10         ` Simon Clubley
2011-01-24 14:04 ` Timo Warns
2011-01-24 23:34   ` Yannick Duchêne (Hibou57)
2011-01-25  0:14     ` Yannick Duchêne (Hibou57)
2011-01-25  1:36       ` Randy Brukardt
2011-02-06 20:05         ` Yannick Duchêne (Hibou57)
2011-02-07 22:09           ` Randy Brukardt
2011-02-07 22:18           ` Randy Brukardt
2011-02-07 22:59             ` Maciej Sobczak
2011-02-07 23:57               ` Shark8
2011-02-08 13:40                 ` Maciej Sobczak
2011-02-10  2:08               ` Randy Brukardt
2011-02-08  9:08             ` Alex R. Mosteo
2011-01-26 20:13 ` Warren
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox