Jan*_*sen 10 cpu virtualization qemu bochs
我想玩新的 AVX 指令。我看到 QEMU 可能有支持,所以我从 Git(昨天)构建了它。我将 CPU 设置为 SandyBridge 并启动了 Tiny Core Linux。TCL 拥有内核 3.0,维基百科声称Linux 在 2.6.30 中获得了 AVX 支持。TCL 也适用于 Bochs 中的 AVX。但是当我在 QEMU 中运行 cat /proc/cpuinfo 时,缺少 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:
$
Run Code Online (Sandbox Code Playgroud)
如何在 QEMU 中获得 AVX 支持?
har*_*ymc 11
似乎如果定义的功能不可用,默认情况下它会以静默方式失败(source)。Qemu 可以模拟主机 CPU 不支持的一些指令集,但我不确定 AVX 是否在其中(或还没有)。
确保 Qemu 使用的所有库,尤其是 libvirt,都达到正确的级别。你也可以试试 .qemu-kvm 的参数-cpu sandyBridge,+avx,enforce。另请参阅此线程是否有用。
对于 AVX 和其他新指令集扩展,英特尔提供了一个模拟器:
英特尔软件开发模拟器。
您也许可以使用它来获得 AVX 的经验。
| 归档时间: |
|
| 查看次数: |
10420 次 |
| 最近记录: |