Будущие процессоры AMD, в том числе, вероятно, EPYC 7004 (Genoa), будут поддерживать 5-уровневую подкачку страниц памяти (5-level paging). Эта технология предназначена для увеличения виртуального и физического адресного пространства в системах x86-64: для виртуальной памяти лимит увеличится с 256 ТиБ до 128 ПиБ, а для физической адресации — с 64 ТиБ до 4 ПиБ (4,5036 Пбайт). На соответствующие патчи для KVM обратил внимание Phoronix.
Переход на новую систему создавать серверы с действительно огромным объёмом памяти. При этом обратной стороной такого подхода является увеличение времени, требуемого на обход таблиц со страницами. Однако на практике это можно компенсировать оптимизацией программного обеспечения.
Intel начала работу над поддержкой этой технологии в Linux ещё 5 лет назад, однако в «железе» она появилась только в микроархитектуре Ice Lake. Она доступна, начиная с ядра Linux 4.14, а в Linux 5.5 она уже включена по умолчанию для поддерживаемых процессорах. C точки зрения ядра реализация AMD должна быть очень похожа на Intel, поскольку она задействует уже существующие механизмы.
При этом пока неясно, когда именно стоит ожидать появления новых патчей в основной ветке ядра. Скорее всего, они будут добавлены до релиза EPYC 7004 или вскоре после, как это обычно и происходит у AMD. Что касается практической ценности данного нововведения, то можно предположить, что обе компании постепенно готовятся к появлению систем с CXL. О петабайтах памяти речи пока нет, но десятки терабайт (особенно с SCM вроде 3D XPoint) в будущих системах кажутся вполне реальными.