Ваша точка, указанная в 3., кажется, указывает на случай или ненужную инициализацию. Это довольно плохо с точки зрения скорости, тратится не только время, потраченное на его выполнение, но и из-за этого происходит большое вытеснение кеша.
Выполнение memset()
или bzero()
(которые в любом случае вызываются calloc()
) - хороший способ аннулировать огромную часть вашего кэша. Не делайте этого, если вы не уверены, что не будете перезаписывать все, но можете прочитать части буфера, которые не будут записаны (как будто 0 является приемлемым значением по умолчанию) Если вы все равно все переписываете, не инициализируйте свою память без необходимости.
Ненужная запись в память не только ухудшит производительность вашего приложения, но и производительность всех приложений, совместно использующих один и тот же процессор.