PHP — Out of memory — куда уходит память?
Рекомендую memtrack. Позволит построчно отображать кто что съел. Если это крон, то лучше ещё вызывать коллектор gc_collect_cycles. И проверьте что сборщик мусора вообще включен.
memory_get_usage но оно только обую занятость по памяти покажет.
unset() в нужном месте может многое.