/*
===============================================================================
Memory Management
This is a replacement for the compiler heap code (i.e. "C" malloc() and
free() calls). On average 2.5-3.0 times faster than MSVC malloc()/free().
Worst case performance is 1.65 times faster and best case > 70 times.
===============================================================================
*/
I've read about how games manage their heap and all the benefits it provides like speed, debugging memory leaks, working well on consoles...
Reasons to not implement this kind:
I probably can't do nearly as good a job writing this code as the OS does for me without a lot of research and info which I can't really find good info on at all. It's probably very platform specific with all the different memory alignments and whatever. It probably even differs between 32 bit and 64 bit. I also still use STL and I might either have to make my own data structures that work well with my memory management or figure out how to make STL well with it.
So basically, how important is this kind of thing? I tried to look for a memory management library since games use this so much but I can't really find anything but little tutorials.
This is being made for an FPS that me and my team are hoping to sell. It has a badass graphics engine using deferred shading so it's not just some little hobbyist game anymore what so ever.
I don't have plans for making it work on consoles yet, at least not until the next generation (those things are ancient!!!!) Maybe strict memory management won't even be that important on the next gen consoles. And I'm not sure how important it is on PCs nowadays either. I was reading this STL Yay or Nay and it talks about how advice given back then might not even be good advice nowadays.