Почему так долго обрабатывается этот код?
Он не долго обрабатывается, он бесконечный.
12 всегда больше единицы, и while(true) длится вечно. (или пока движок его по таймауту не вырубит)
Чтобы код обрабатывался быстрее - установите значение опции:
max_execution_time
на желаемое время в секундах.