The actual allocation happens in memset() - because this is where the application page faults and jumps to the kernel. The kernel populates application's address space and returns back to user land. This surely can add a lot of noise to the test results. free() is also not very simple anymore considering all the madvise() magic it does.
It probably would be interesting to see how many page faults the application generates with tcmalloc/jemalloc/glibc/etc
allocators.
It probably would be interesting to see how many page faults the application generates with tcmalloc/jemalloc/glibc/etc allocators.
-ss