Applications that should use heap pools

The following types of applications can benefit from the use of heap pools:
  • Multi-threaded applications: although single-threaded applications can benefit from the heap pools algorithm, multi-threaded applications can get the most benefit because the proper use of heap pools virtually eliminates contention for heap storage.
  • Applications which issue many storage requests with a malloc() of 64K bytes or less, because the heap pools algorithm cannot be used for a malloc() that is greater than 64K bytes.
  • Applications that are not storage constrained: the heap pools algorithm gives up storage for speed. When untuned, the heap pools algorithm uses much more storage than the normal malloc()/free() algorithm; when properly tuned it uses only slightly more. Therefore, storage constrained applications should try heap pools, but only if the cell sizes and cell pool counts are carefully tuned. (For tuning information, see Tuning heap storage .) It is possible that some applications running with the heap pools algorithm will have to increase their region size.