Bof, I did some start lazarus (start of running lazarus ide to lazarus application idle) timings a few years ago, with FastMM, Heap.inc and cmem.
The results where not different enough that not using the standard heap.inc would be justified and I had to modify fastmm to run with freepascal.
The cmem.pp implementation that gave very good results when multi-threading, at least in windows, has been so badly butchered in its implementation, that it can not be used across different languages using malloc/winheap family of memory allocation.
And whatever, a problem is that the FPC team does not want to start an alternate memory manager at the very, very beginning of the initialization of a process.