Прескачане към съдържанието

NPT and RVI

Архитектурна справкаFeex

Наричан още NPT / RVI

NPT, Nested Page Tables, е средството на AMD за преобразуване на паметта на госта на втори етап, свързано също с Rapid Virtualization Indexing, RVI. По своето предназначение то е еквивалентът на AMD на Intel EPT.

Какво трябва да знаете

NPT, Nested Page Tables, е средството на AMD за преобразуване на паметта на госта на втори етап, свързано също с Rapid Virtualization Indexing, RVI. По своето предназначение то е еквивалентът на AMD на Intel EPT.

Как работи

Таблиците със страници на госта първо преобразуват виртуалните адреси на госта във физически адреси на госта. Вложените таблици със страници, контролирани от хипервайзора, преобразуват физическите адреси на госта в системни физически адреси. Двата етапа на преобразуване и техните права участват в достъпа до паметта с дефинирано поведение при грешки и инвалидиране.

Къде е полезно

Дадена VM може да управлява свои собствени адресни пространства, докато хостът съпоставя паметта на госта с действителните физически страници на машината. Хипервайзорът трябва правилно да обработва промените в съпоставянето и кешовете за преобразуване, вместо да третира вложеното странициране като фиксирано статично търсене.

Как се проверява поддръжката и активирането

Избройте листото за SVM функционалности на AMD за вложено странициране, след като потвърдите обхвата на разширените листа и поддръжката на SVM. Проверете дали хипервайзорът действително активира и поддържа желаната конфигурация, включително изискванията за вложен гост.

Внедряването с виртуализация включва няколко слоя: физическа възможност, разрешение от фърмуера, активен хипервайзор на хоста, експонирани възможности за госта и поддръжка от операционната система на госта. Проверявайте слоя, в който действително се изпълнява операцията, включително при вложена виртуализация, когато е приложимо.

Какво не гарантира тази функция

NPT не предполага IOMMU изолация на устройства, SEV или всяка опция за големи страници и вложена виртуализация. RVI не е допълнителна инструкция, която приложенията включват. Намаленото забавяне при преобразуване зависи от работното натоварване, а не е универсален фактор за повишаване на производителността.

Съвместимост и производителност на практика

Изпълнението на инструкции от процесора, транслирането на паметта на госта и пренасочването на DMA на устройствата са отделни механизми. Не правете изводи за директно пренасочване (passthrough) или изолация само от едно поле за виртуализация. Използвайте поддържаната диагностика на хипервайзора и точните изисквания на платформата/устройството.

Практически контролен списък за проверка

  1. Запишете точния модел на процесора или платформата, както и използваните версии на приложението, операционната система и средата за изпълнение. Запазете точния текст на действителната грешка или изискване.
  2. Проверете документацията от производителя за този точен модел, след което инспектирайте действителните възможности и активираното състояние в средата, където работи програмата.
  3. Сравнете всяко изискване на избрания двоичен файл или бекенд. Подобно наименувана функция, псевдоним или общ технологичен етикет не са достатъчни.
  4. Потвърдете, че приложението е избрало планираната реализация. Използвайте неговата документирана диагностика и поддържан резервен вариант, когато изискванията не са изпълнени.
  5. Правете по една поддържана промяна наведнъж и повтаряйте същото работно натоварване. Запазете достъпни оригиналната конфигурация и плана за възстановяване.

Ако функцията е посочена, но софтуерът не може да я използва

Започнете с точния компонент, който дава грешка. Хардуерната база данни описва записаните възможности; операционната система или хипервайзорът могат да предоставят различна ефективна среда. Грешка за невалидна инструкция (illegal-instruction) също изисква разследване на действителната сриваща се инструкция и компилацията на двоичния файл, тъй като повреда или несвързана неподдържана инструкция може да предизвика подобен симптом.

Инсталирайте версията на приложението, драйвера или средата за изпълнение, която се поддържа за точната платформа, и използвайте документираната от производителя базова или резервна компилация, ако е необходимо. Софтуерна актуализация не може да създаде инструкция, която липсва в процесора. Промените във фърмуера и политиките за сигурност трябва да следват процедурата на производителя на системата и план за възстановяване, а не общи съвети за оптимизация.

Източници и обхват на това обяснение

AMD CPUID Specification, публикация 25481 · AMD64 Architecture Programmer's Manual, Volume 2: System Programming

Тези източници установяват архитектурното поведение и софтуерните изисквания. Те не проверяват независимо всяка стойност на параметър на свързана страница за хардуерен модел. За поддръжка на даден модел използвайте данните от производителя на съответната страница и проверете ефективната системна конфигурация. Тази статия не предоставя бенчмарк, сертификация или дата на независим преглед.

Източници и проверка

Редакционна собственост: Feex. Не е записана дата на независим преглед. Как проучваме.

  • AMD CPUID Specification, публикация 25481 · Архивирана архитектурна справка за установените функции на AMD CPUID и дефиниции на битове. Използвайте актуалното справочно ръководство за програмиране на процесора за разширения, специфични за по-късни поколения.
  • AMD64 Architecture Programmer's Manual, Volume 2: System Programming · Системно програмиране, SVM и вложено транслиране, ревизия 3.46. Текущият преглед на документацията изисква JavaScript; по-стари адреси на документи може да са изведени от употреба.

Беше ли полезна тази статия?

Достатъчно е "да" или "не". Изберете причина, ако желаете, или добавете кратка бележка.

Беше ли полезна тази статия?