Данная оптимизация, направленная на сокращение количества вызовов в 16 раз, привела к снижению производительности некоторых систем на 37–43%. Инженер Oracle Лоренцо Стоукс выявил причину проблемы – дорогостоящий поиск в фолио при пакетной обработке PTE.
В результате внедрения исправлений производительность была восстановлена до уровня, наблюдаемого до оптимизации ARM64. Исправление включает отказ от поиска в фолио и использование функции pte_batch_hint() для определения размера пакета PTE.
Данное исправление устранило регрессию за короткий промежуток времени и демонстрирует эффективную работу команды разработчиков ядра Linux.