Virtual machine 模拟可用的simd指令集进行测试

Virtual machine 模拟可用的simd指令集进行测试,virtual-machine,simd,intrinsics,Virtual Machine,Simd,Intrinsics,我想测试一些手工编写的内部函数代码在具有不同可用指令集的平台上的行为。我所说的“行为”主要是指选择正确的代码路径,而不是崩溃 不买一堆机器我怎么能做到这一点?是否有任何虚拟机软件包支持此功能?对于英特尔处理器,您可以使用其SDE。()它并不完美,而且对于较旧的处理器来说有点问题。但它是有效的。诚然,它主要是为了模拟未发布的指令集。@ MyStual:老实说,我认为拥有一个小型的C++库是很好的,它实现了所有原始的本质,而没有x86特定的代码。也许用旧的指令集模拟新指令也不错。最好是使用permi

我想测试一些手工编写的内部函数代码在具有不同可用指令集的平台上的行为。我所说的“行为”主要是指选择正确的代码路径,而不是崩溃


不买一堆机器我怎么能做到这一点?是否有任何虚拟机软件包支持此功能?

对于英特尔处理器,您可以使用其SDE。()它并不完美,而且对于较旧的处理器来说有点问题。但它是有效的。诚然,它主要是为了模拟未发布的指令集。@ MyStual:老实说,我认为拥有一个小型的C++库是很好的,它实现了所有原始的本质,而没有x86特定的代码。也许用旧的指令集模拟新指令也不错。最好是使用permissive license=)我找不到这样的东西…@stgatilov我用AVX512的子集做的。不幸的是,这并不像听起来那么简单。对于使用大量内部函数的大型项目,很容易超出编译器的“复杂度”限制,或者由于数百个(模拟)向量寄存器的寄存器溢出而完全破坏堆栈