Qt5.15.2 — необъявленный идентификатор «_mm_hsum_epi32»; [дубликат] ⇐ C++
Qt5.15.2 — необъявленный идентификатор «_mm_hsum_epi32»; [дубликат]
У меня есть код для использования SIMD для расчета ядра CNN: Я уже включил , но мой Qt заметил ошибку: использование необъявленного идентификатора '_mm_hsum_epi32';
inline int IM_Conv_SIMD (беззнаковый символ* pCharKernel, беззнаковый символ *pCharConv, int iLength) { const int iBlockSize = 16, Block = iLength/iBlockSize; __m128i SumV = _mm_setzero_si128 (); __m128i Ноль = _mm_setzero_si128 (); for (int Y = 0; Y < Block * iBlockSize; Y += iBlockSize) { __m128i SrcK = _mm_loadu_si128 ((__m128i*)(pCharKernel + Y)); __m128i SrcC = _mm_loadu_si128 ((__m128i*)(pCharConv + Y)); __m128i SrcK_L = _mm_unpacklo_epi8 (SrcK, Ноль); __m128i SrcK_H = _mm_unpackhi_epi8 (SrcK, Ноль); __m128i SrcC_L = _mm_unpacklo_epi8 (SrcC, ноль); __m128i SrcC_H = _mm_unpackhi_epi8 (SrcC, ноль); __m128i SumT = _mm_add_epi32 (_mm_madd_epi16 (SrcK_L, SrcC_L), _mm_madd_epi16 (SrcK_H, SrcC_H)); SumV = _mm_add_epi32 (SumV, SumT); } int Sum = _mm_hsum_epi32 (SumV); // Ошибка в этой строке: использование необъявленного идентификатора '_mm_hsum_epi32' for (int Y = Block * iBlockSize; Y < iLength; Y++) { Sum += pCharKernel[Y] * pCharConv[Y]; } вернуть сумму; }
У меня есть код для использования SIMD для расчета ядра CNN: Я уже включил , но мой Qt заметил ошибку: использование необъявленного идентификатора '_mm_hsum_epi32';
inline int IM_Conv_SIMD (беззнаковый символ* pCharKernel, беззнаковый символ *pCharConv, int iLength) { const int iBlockSize = 16, Block = iLength/iBlockSize; __m128i SumV = _mm_setzero_si128 (); __m128i Ноль = _mm_setzero_si128 (); for (int Y = 0; Y < Block * iBlockSize; Y += iBlockSize) { __m128i SrcK = _mm_loadu_si128 ((__m128i*)(pCharKernel + Y)); __m128i SrcC = _mm_loadu_si128 ((__m128i*)(pCharConv + Y)); __m128i SrcK_L = _mm_unpacklo_epi8 (SrcK, Ноль); __m128i SrcK_H = _mm_unpackhi_epi8 (SrcK, Ноль); __m128i SrcC_L = _mm_unpacklo_epi8 (SrcC, ноль); __m128i SrcC_H = _mm_unpackhi_epi8 (SrcC, ноль); __m128i SumT = _mm_add_epi32 (_mm_madd_epi16 (SrcK_L, SrcC_L), _mm_madd_epi16 (SrcK_H, SrcC_H)); SumV = _mm_add_epi32 (SumV, SumT); } int Sum = _mm_hsum_epi32 (SumV); // Ошибка в этой строке: использование необъявленного идентификатора '_mm_hsum_epi32' for (int Y = Block * iBlockSize; Y < iLength; Y++) { Sum += pCharKernel[Y] * pCharConv[Y]; } вернуть сумму; }
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Необъявленный идентификатор в строках 195 и 305, но они объявлены [закрыто]
Anonymous » » в форуме C++ - 0 Ответы
- 32 Просмотры
-
Последнее сообщение Anonymous
-