6

Я хочу играть с новыми инструкциями AVX. Я видел, что QEMU может иметь поддержку, поэтому я создал его из Git (вчера). Я установил процессор в SandyBridge и загрузил Tiny Core Linux. У TCL есть ядро 3.0, и Википедия утверждает, что Linux получил поддержку AVX в 2.6.30. TCL также работает с AVX в Bochs. Но когда я кошка / Proc / CPUInfo при работе в QEMU, AVX отсутствует flags

$ cat /proc/cpuinfo 
processor   : 0
vendor_id   : GenuineIntel
cpu family  : 6
model       : 42
model name  : Intel Xeon E312xx (Sandy Bridge)
stepping    : 1
cpu MHz     : 1861.924
cache size  : 4096 KB
fdiv_bug    : no
hlt_bug     : no
f00f_bug    : no
coma_bug    : no
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx rdtscp lm constant_tsc up pni cx16 popcnt hypervisor lahf_lm
bogomips    : 3725.00
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management:

$

Как получить поддержку AVX в QEMU?

1 ответ1

6

Похоже, что если определенная функция недоступна, она по умолчанию завершится с ошибкой (источник). Qemu может эмулировать некоторые наборы команд, не поддерживаемые центральным процессором, но я не уверен, есть ли среди них AVX (или еще нет).

Убедитесь, что все библиотеки, используемые Qemu, и особенно libvirt, находятся на правильном уровне. Вы также можете попробовать параметры qemu-kvm -cpu sandyBridge,+avx,enforce . Смотрите также, если эта тема полезна.

Для AVX и других новых расширений набора команд Intel предоставляет эмулятор:
Эмулятор разработки программного обеспечения Intel.
Вы можете использовать его вместо этого, чтобы получить опыт работы с AVX.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .