各位大佬,我在QEMU上的arch linux测试,把相应地方的复制代码改成了向量指令,运行时间反而变长了。这是怎么回事?
源码:
默认生成的汇编:
我把对应地方代码改成向量指令之后的汇编:
默认-O1优化执行结果:
我修改代码后的执行结果:
多执行几次,输出的时间还不一样,最高我还看见有300多的。
qemu是最新的8.1版本,官方文档说这个版本开始支持Loongarch的LSX向量指令集。向量指令的我是从龙芯提交给上游binutils的源码里反汇编需要的那个opcodes文件夹里找到的,里面有现在龙架构所有的指令名称。
所以这到底是为什么呢?我真的需要买真实的物理硬件吗?