что говорили другие; Вы должны использовать инструменты, чтобы определить, куда идет время. В частности, вы захотите использовать инструмент сэмплера ЦП и инструмент активности виртуальной памяти.
Исходя из этого, я бы поспорил, что ваше приложение заставляет систему исчерпать ОЗУ и начать подкачку на диск. Это точно скажется на производительности убийства, как вы описываете; в какое-то неопределенное время во время выполнения кажется, что приложение либо очень медленное, либо просто на время останавливается.
Вероятно, вам также следует использовать инструмент Object Alloc, чтобы выяснить, используете ли вы память, как ожидалось, и, если вы используете довольно много, где вы могли бы оптимизировать использование памяти.