Iommu controller что это
Iommu controller что это
Часовой пояс: UTC + 3 часа
Запрошенной темы не существует.
Часовой пояс: UTC + 3 часа
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan
Опция BIOS Virtualization — как включить виртуализацию в BIOS
Опция Virtualization Technology. Включение данной опции включает технологию аппаратной виртуализации, основанной на специальной процессорной архитектуре. В отличие от программной виртуализации, с помощью данной техники возможно использование изолированных гостевых систем (виртуальных машинах — VMware, Virtual PC и тд.), управляемых гипервизором напрямую. Гостевая система не зависит от архитектуры хостовой платформы и реализации платформы виртуализации.
На работу программ пользователя в стандартной операционной системе данная опция практически не влияет.
Значения опции:
- Enabled,
- Disabled
Опция также может иметь другие названия:
- Virtualization Technology
- Vanderpool Technology
- VT Technology
- Virtualization
Примечание 1.Аппаратная виртуализация виртуализация с поддержкой специальной процессорной архитектуры. Аппаратная виртуализация обеспечивает производительность, сравнимую с производительностью невиртуализованной машины, что дает виртуализации возможность практического использования и влечет её широкое распространение. Наиболее распространены технологии виртуализации Intel-VT и AMD-V.
- В Intel VT (Intel Virtualization Technology) реализована виртуализация режима реальной адресации (режим совместимости с 8086). Соответствующая аппаратная виртуализация ввода-вывода — VT-d. Часто обозначается аббревиатурой VMX (Virtual Machine eXtension). Кодовое название — Vanderpool.
- AMD-V часто обозначается аббревиатурой SVM (Secure Virtual Machines). Кодовое название — Pacifica. Соответствующая технология виртуализации ввода-вывода — IOMMU. AMD-V проще и эффективнее, чем Intel VT. Поддержка AMD-V появилась в Xen 3.3.
Intel VT (Intel Virtualization Technology) — intel virtualization technology что это?
VT-x 13 ноября 2005 года Intel выпустила две модели Pentium 4 (модели 662 и 672), которые стали первыми процессорами, поддерживающими VT-x («Vanderpool»). VT-x представляет собой технологию виртуализации Intel режима реальной адресации на платформе x86 — VMX (Virtual Machine eXtension).
Реализована виртуализация режима реальной адресации (режим совместимости с 8086).
VT-d (Virtualization technology for directed I/O) — технология аппаратной виртуализации ввода-вывода , созданная корпорацией Intel в дополнение к её технологии виртуализации вычислений VT-x. Виртуализация ввода-вывода позволяет пробрасывать (pass-through) устройства на шине PCI (и более современных подобных шинах) в гостевую ОС, таким образом, что она может работать с ним с помощью своих штатных средств. Чтобы такое было возможно, в логических схемах системной платы используется специальное устройство управления памятью ввода-вывода (IOMMU), работающее аналогично MMU центрального процессора, используя таблицы страниц и специальную таблицу отображения DMA (DMA remapping table — DMAR), которую гипервизор получает от BIOS через ACPI. Отображение DMA необходимо, поскольку гипервизор ничего не знает о специфике работы устройства с памятью по физическим адресам, которые известны лишь драйверу. С помощью DMAR он создает таблицы отображения таким образом, что драйвер гостевой ОС видит виртуальные адреса IOMMU аналогично тому, как бы он видел физические без него и гипервизора.
Intel Virtualization Technology for Directed I/O (VT-d) — это следующий важный шаг на пути к всеобъемлющей аппаратной поддержке виртуализации платформ на базе Intel. VT-d расширяет возможности технологии Virtualization Technology (VT), существующей в IA-32 (VT-x) и Itanium (VT-i), и добавляет поддержку виртуализации новых устройств ввода-вывода. Ознакомиться подробнее с технической стороной вопроса можно здесь https://ru.wikipedia.org/wiki/
Программа Setup BIOS фирмы AWARD Software International Inc на системных платах GIGABYTE TECHNOLOGY
Название данной опции у данного производителя в данной версии BIOS:
Проблемы с включением IOMMU
Сап, лорчан. Имею мать GA-990FXA-D3, rev 1.2. Биосе присутствуют пункты Virtualization и IOMMU, оба включены. Тем не менее, в dmesg всё время
Написал в саппорт Gigabyte:
Здравствуйте! Год назад приобрел эту материнскую плату, вот возникла проблема: вне зависимости от включенностивыключенности IOMMU в BIOS система просит включить в Биосе поддержку iommu. Проверялось на Gentoo
amd64 с ядром 3.13.5 и на Ubuntu 13.10 со стандартным ядром. Наличие строки «[ 0.000000] Please enable the IOMMU option in the BIOS setup» в двух дистрибутивах говорит о том, что ядерный модуль iommu включен и работает, а проблема в самом Биосе. Биос изначально был F7, вчера обновился до F9a, ничего не изменилось. Буду благодарен за любую информацию и помощь.
===
$ dmesg | grep IOMMU -A2 -B5
[ 0.000000] Checking aperture.
[ 0.000000] No AGP bridge found
[ 0.000000] Node 0: aperture @ c4000000 size 32 MB
[ 0.000000] Aperture pointing to e820 RAM. Ignoring.
[ 0.000000] Your BIOS doesn’t leave a aperture memory hole
[ 0.000000] Please enable the IOMMU option in the BIOS setup
[ 0.000000] This costs you 64 MB of RAM [ 0.000000] Mapping aperture over 65536 KB of RAM @ c4000000
На что получил ответ:
Благодарим Вас за использование нашей продукции и за обращение в службу технической поддержки GIGABYTE TECHNOLOGY.
Материнские платы компании Gigabyte проходят соответствующую сертификацию на предмет совместимости с операционными системами компании Microsoft (сертификат Windows Hardware Quality Labs/WHQL), так же информацию о совместимости Вы можете найти на сайте Microsoft: http://www.microsoft.com/windows/compatibility/windows-7/en-us/Search.aspx?l=. Вся продукция компании Gigabyte, все программное обеспечение разрабатывается и тестируется только под операционные системы компании Microsoft. В разделе «Спецификации» или «Описание», к любой модели материнской платы есть пункт, в котором указаны поддерживаемые операционные системы, в Вашем случае это Microsoft Windows 7/Vista/XP.
Так же, на сайте отмечено, что: «Из-за особенностей осуществления поддержки семейства ОС Linux со стороны производителей системной логики, пожалуйста, обратитесь за драйверами для Linux на сайты разработчиков.»
Таким образом, мы не можем гарантировать какую-либо стабильную работу компьютера при использовании операционных систем Linux.
С Уважением и Наилучшими пожеланиями, GIGABYTE TECHNOLOGY
Они, блин, совсем там упоролись? Слов нет просто.
Ну да ладно. IOMMU мне нужно для проброса видеокарты в виртуалку с шиндой, второй видеокарты пока нет, виртуалки с шиндой тоже (будет либо xen либо qemu-kvm, смотря что покажет себя шустрее). Перед докупкой железа решил потыкать, действительно ли работает iommu на этой матери. Оказалось — не работает. Но опции есть и включены. Но не работает.
[РЕШЕНО] IOMMU
Разумеется, система твоя, мы о ней ничего не знаем.
загляни сперва в правила, обрати внимание на пятый пункт.
Затем приложи,как там просят inxi и дополнительно вывод dmesg и syslog на предмет работы iommu и определения интерфейсов в обоих режимах.
У меня например нет ни гигабайтовских матерей, ни регулировки iommu вовсе на девайсах под рукой.
Он один на оба случая, спосле двух dmesg’ей
Будем читать
Надеюсь это то, что надо.
А вот задействования IOMMU — там не наблюдаю почему-то. Хотя его инициализация должна пройти гораздо раньше сети.
И еще в сислог не попал второй старт от Jun 16 12:55:34, видимо обрезался файлик. За этот срез лога видно только что хром падал.
Можно расшарить где-нибудь сами файлики /var/log/syslog
И /var/log/dmesg, куда-нибудь пересохранить, когда сеть не работает, чтоб нам показать.
Вот так гораздо прозрачней
сама по себе технология относится к решениям виртуализации, требуется оно или нет в данном случае, решать придется самостоятельно:)
В основном информация в сети сводится к следующему:
1. либо стоит включить проброс (passthrought) и поддержку iommu на уровне ядра. Добавить к строке загрузки:
Чтоб AMD-V не ругался, как здесь:
[ 18.474549] AMD-Vi: Event logged [IO_PAGE_FAULT device=02:00.0 domain=0x0014 address=0x00000000bec16880 flags=0x0010]
2. Либо отключить её в биосе и перевести в программный режим.
Что такое IOMMU и улучшит ли это производительность моей виртуальной машины?
Чипсет моей материнской платы поддерживает эту функцию IOMMU , я прочитал (но не совсем понял), что он повышает производительность виртуальной машины, позволяя виртуальной машине использовать реальное физическое оборудование вместо виртуального.
Действительно ли это приносит улучшение производительности виртуальной машины? и если да, то как я могу извлечь из этого пользу Virtualbox?
Короче говоря, единственный способ, которым IOMMU поможет вам, — это если вы начнете назначать ресурсы HW непосредственно виртуальной машине. Просто это не делает вещи быстрее.
Было бы полезно точно знать, какая материнская плата / процессор рекламирует эту функцию. IOMMU является системным механизмом отображения ввода-вывода и может использоваться с большинством устройств.
IOMMU звучит как общее название для Intel VT-d и AMD IOV. В этом случае я не думаю, что вы можете мультиплексировать устройства, это очень похоже на пропуск PCI, прежде чем существовали все эти причудливые инструкции по виртуализации :). SR-IOV отличается, само периферийное устройство должно нести поддержку. HW знает, что он виртуализирован, и может делегировать HW срез себя виртуальной машине. Многие виртуальные машины могут взаимодействовать с устройством SR-IOV одновременно с очень низкими издержками.
Единственное, что быстрее, чем SR-IOV, — это пропуск PCI, хотя в этом случае только одна виртуальная машина может использовать это устройство, даже операционная система хоста не может использовать его. Прохождение PCI было бы полезно, скажем, для виртуальной машины, которая работает с интенсивной базой данных, которая выиграет от подключения к FiberChannel SAN.
Приближение к HW имеет свои ограничения, однако делает виртуальные машины менее переносимыми для развертываний, для которых требуется, например, оперативная миграция. Это относится как к проходу SR-IOV, так и к PCI.
В виртуальных развертываниях Linux по умолчанию обычно используется VirtIO , что довольно быстро для начала.