我正在使用乘法(加上其他运算)代替整数除法。我的解决方案最终要求我将2个32位数字相乘并取前32位(就像mulhi函数一样),但是AVX2不提供_mm256_mulhi_epu16的32位变体(例如:没有'_mm256_mulhi_epu32'函数)。
我尝试了各种方法,例如检查AVX512的功能,甚至将32位整数处理为2个高/低16位整数。我对使用低级编程非常陌生,因此我不知道什么是最佳的,甚至是可能的。
我正在使用乘法(加上其他运算)代替整数除法。我的解决方案最终要求我将2个32位数字相乘并取前32位(就像mulhi函数一样),但是AVX2不提供_mm256_mulhi_epu16的32位变体(例如:没有'_mm256_mulhi_epu32'函数)。
我尝试了各种方法,例如检查AVX512的功能,甚至将32位整数处理为2个高/低16位整数。我对使用低级编程非常陌生,因此我不知道什么是最佳的,甚至是可能的。