Механизм Smart Access Memory, предложенный компанией AMD для улучшения производительности видеокарт Radeon RX6000, предполагает полное размещение локальной памяти графического адаптера в адресном пространстве платформы без использования картируемого окна. Эта функция, изначально рассчитанная только на продукты AMD, находит свое применение и на платформах, оснащенных системной логикой от Intel. Во всяком случае, компания ASUS задекларировала обновления UEFI BIOS для своих материнских плат на чипсетах Intel 400-й серии, став ориентиром для других производителей.

AMD представила Smart Access Memory как механизм, обеспечивающий полный доступ к видеопамяти процессорами Ryzen 5000. Компания уверяет, что с его помощью можно добиться лучшей геймерской производительности, подняв FPS от 2 до 13 процентов в большинстве компьютерных игр. Вскоре AMD подтвердила, что совместимость с процессорами Intel возможна, и NVIDIA также работает над собственной реализацией функциональности Resizable BAR Capability, лежащей в основе Smart Access Memory.

Первыми «подружить» процессоры Intel с графикой Radeon RX6000 взялись инженеры ASUS, объявив о доступности бета-версий UEFI BIOS для материнских плат с наборами системной логики Z490, H470, B460 и H410. Именно на этих платформах в установках CMOS Setup можно оперировать с настройками параметра Re-Size BAR Support, что есть ни что иное, как управление размером адресного диапазона, запрошенного GPU. Почти пять лет назад «Компостер 2.0» стал пионером по исследованию инициатив компании Microsoft, взявшей в оборот функциональность Resizable BAR Capability.

Классический метод адресации видеопамяти, обремененный требованиями совместимости с 32-разрядными платформами, подразумевает наличие картируемого окна размером 256...512 MB. Окно расположено в пределах нижних 4 GB адресного пространства (например, как регион 0xD0000000...0xDFFFFFFF), базовый адрес и размер которого зависит от конкретной реализации платформы.
Графический адаптер оснащается картирующей логикой, позволяющей постранично адресовать всю видео память, поочередно отображая ее участки на указанное окно. Необходимость такого картирования доставляет особенно серьезные неудобства при организации bus-master доступа PCIe-устройств (например, NVMe) к видеопамяти в режиме Peer-to-Peer, так как для операции картирования задействуются ресурсы центрального процессора.
Каноническая 16-битная модель x86-платформы с ISA-шиной, использует диапазон 0xA0000...0xBFFFF (128 KB), блоки которого, в зависимости от видео режима и типа адаптера, используются для постраничной адресации видеопамяти. Но это не более, чем экскурс к истокам.
Нетрудно заметить, что в основе плоской модели адресации видеопамяти лежат принципы, изложенные в базовом документе PCI Express Specification. Вместе с тем, ошибочно считать, что Smart Access Memory — всего лишь имплементация функциональности Resizable BAR Capability, базирующейся на требованиях этой спецификации. Такая имплементация является необходимым, но не достаточным условием работоспособности технологии SAM. Для того чтобы новый механизм доступа принес прибавку производительности требуется основательный редизайн драйверов, а в некоторых случаях — и приложений, а также оптимизация самого GPU, который при обслуживании видеопамяти выступает как минимум в двух ролях:
- Транзитный мост между PCIe-шиной и локальной памятью видеоадаптера
- Графический процессор, выполняющий собственные обращения к локальной видеопамяти
Очевидно, плоская модель адресации видео памяти в рамках технологии Smart Access Memory затрагивает первый из перечисленных вариантов, поэтому логично предположить, что главный выигрыш в производительности получит программное обеспечение, практикующее доступ к видео памяти под управлением центрального процессора, а также других устройств в режиме Peer-to-Peer, например NVMe накопителя или второго GPU.
Для вычислительных сценариев, в которых обмен информацией между GPU и платформой осуществляется через системное ОЗУ (видео адаптер в режиме bus master читает из системного ОЗУ информацию, подготовленную центральным процессором), на первый взгляд изменений не предвидится. В этом может заключаться одна из причин зависимости уровня влияния новой технологии от конкретной игры.