title: std::map standard allocator performance versus block allocator
body: <p>I've read on a C++ optimization cookbook that the standard allocator for STL containers such as std::list, std::set, std::multi_set, std::map, e std::multi_map can be replaced by a more performant <strong>block allocator</strong>.</p>
  
  <p>A block allocator has higher performance, low fragmentation and efficient data caching.</p>
  
  <p>I've found on the web the FSBAllocator which claims to be faster than the standard.
  <a href="http://warp.povusers.org/FSBAllocator/" rel="noreferrer">http://warp.povusers.org/FSBAllocator/</a></p>
  
  <p>I've tried it with std::map and found the seems to be faster indeed, but my question is how can be the STL implementation be so slower than a specific allocator and what are the drawbacks of another allocator than the standard, in terms of both portability and robustness? My code must compile on a variety of architectures (win32, osx, linux).
  Do someone had experience with that kind of fixed size block allocator?</p>