Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/155.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 英特尔SIMD-如何检查_m256*是否包含任何非零值_C++_Simd_Intrinsics_Avx - Fatal编程技术网

C++ 英特尔SIMD-如何检查_m256*是否包含任何非零值

C++ 英特尔SIMD-如何检查_m256*是否包含任何非零值,c++,simd,intrinsics,avx,C++,Simd,Intrinsics,Avx,我正在使用Microsoft Visual Studio编译器。我试图找出256位向量是否包含任何非零值。我试过res\u simd=_mm256_testz_ps(*pSrc1,*pSrc1)但它不起作用。\u mm256\u testz\u ps只测试符号位-为了测试需要与0进行比较的值,然后提取生成的掩码,例如 __m256 vcmp = _mm256_cmp_ps(*pSrc1, _mm256_set1_ps(0.0f), _CMP_EQ_OQ); int mask = _mm256_m

我正在使用Microsoft Visual Studio编译器。我试图找出256位向量是否包含任何非零值。我试过
res\u simd=_mm256_testz_ps(*pSrc1,*pSrc1)但它不起作用。

\u mm256\u testz\u ps
只测试符号位-为了测试需要与0进行比较的值,然后提取生成的掩码,例如

__m256 vcmp = _mm256_cmp_ps(*pSrc1, _mm256_set1_ps(0.0f), _CMP_EQ_OQ);
int mask = _mm256_movemask_ps(vcmp);
bool any_nz = mask != 0xff;