Если вся выделенная память заполнена нулями, поведение программы гораздо более воспроизводимо (поэтому, скорее всего, поведение будет таким же, если вы перезапустите свою программу). Вот почему я не использую неинициализированные зоны malloc.
(по аналогичным причинам при отладке программ на C или C ++ в Linux я обычно выполняю echo 0 > /proc/sys/kernel/randomize_va_space
, чтобы поведение mmap
было более воспроизводимым).
И если ваша программа не выделяет огромные блоки (то есть десятки мегабайт), время, проведенное внутри malloc, намного больше, чем время для его обнуления.