Google планирует повысить производительность устройство под управлением Android, обеспечив им поддержку страниц памяти размером 16 Кбайт. Сейчас это нововведение активно тестируется.
«В большинстве процессоров есть выделенный аппаратный модуль, называемый блоком управления памятью (MMU) и преобразующий адреса из используемых программой в физическое расположение в памяти. Преобразование исходит из размера страницы. Каждый раз, когда программе требуется больше памяти, операционной системе приходится вмешиваться и производить запись в „таблице страниц“, назначая этот фрагмент памяти процессу. То есть система может тратить больше времени на то, чтобы видео смотрелись отлично, игры работали хорошо, а приложения — плавно, и меньше времени на заполнение низкоуровневых документов операционной системы», — пояснили в Google.
Сейчас Android «создана и оптимизирована для работы с размером страницы 4 Кбайт». В Google подсчитали, что переход на более крупный размер страниц обещает «общий рост производительности на 5–10 %», но при этом общий расход памяти вырастет примерно на 9 %. В частности, если ресурсы памяти ограничены, время запуска приложений в среднем сокращается на 3,16 %, а в некоторых случаях и на 30 %; потребление энергии во время запуска при запуске приложения в среднем уменьшается на 4,56 %; «горячий» запуск камеры ускоряется в среднем на 4,48 %, «холодный» — на 6,60 %; время загрузки системы сокращается в среднем на 1,5 % или на 0,8 с, гласят подсчёты Google.
В Android 15 компания перестроила ОС «с нуля для поддержки работы с различными размерами страниц, что сделало её безразличной к размеру страницы». Разработчикам приходится перекомпилировать приложения для поддержки устройств с размером страницы 16 Кбайт, и теперь «один и тот же двоичный файл приложения может работать на устройствах со страницами памяти как 4, так и 16 Кбайт». Развёртывание нововведения может начаться с Android 15 QPR1 Beta 1 на Pixel 8 и 8 Pro. Доступная разработчикам опция «Загрузка с размером страницы 16 Кбайт» потребует разблокировки загрузчика и очистки устройства, поэтому рядовым пользователям она не подойдёт. Сейчас Google сотрудничает с «партнёрами по SoC и OEM, чтобы вскоре включить эту опцию на новых устройствах», но пока основной рабочий вариант — эмулятор x86_64.
Для рядовых пользователей компания пообещала развернуть нововведение в «ближайшем будущем», хотя на текущий момент «нет ни доступных, ни ожидаемых Android-устройств к выпуску Android 15, которые поддерживают размер страницы 16 Кбайт». Предполагается, что на практике переход будет производиться по мере увеличения объёмов оперативной памяти на конечных устройствах.
Источник: