我正在尝试使用AVX优化某些整数(_int64)操作。但是,我甚至无法简单地添加操作。它一直告诉我非法指令。我可以纠正我做错的事吗?感谢
for (int i = 0; i < 1; i+=4)
{
__m256i rA, rB, rC;
__m256i *iu, *ju, *ku;
iu = (__m256i *)(MatrixAiB1 + i);
ju = (__m256i *)(MatrixAjB1+ i);
ku = (__m256i *) (store+ i);
rA=_mm256_load_si256(iu);
rB=_mm256_load_si256(ju);
rC=_mm256_add_epi16(rA,rB);
_mm256_store_si256(ku,rC);
}
答案 0 :(得分:5)
您正在使用AVX 2指令集中的指令,该指令尚未得到广泛支持。非法指令异常表示您在不支持这些指令的计算机上运行代码。
这些指令今年首次在Haswell处理器中引入 - 因此“不受广泛支持”目前意味着“不受任何公开处理器支持”。