Я пытался работать над кодом AVX512. Работая над тем же, пытался найти функцию, похожую на _mm256_sign_epi8 в AVX512, но не смог найти эквивалент. Было бы очень полезно, если бы мы нашли подобную инструкцию. Есть ли эквивалентная инструкция или какой-либо другой альтернативный способ сделать это для AVX512 с аналогичным/меньшим CPI/задержкой? Спасибо.
Пример функции AVX2
Я пытался работать над кодом AVX512. Работая над тем же, пытался найти функцию, похожую на _mm256_sign_epi8 в AVX512, но не смог найти эквивалент. Было бы очень полезно, если бы мы нашли подобную инструкцию. Есть ли эквивалентная инструкция или какой-либо другой альтернативный способ сделать это для AVX512 с аналогичным/меньшим CPI/задержкой? Спасибо. Пример функции AVX2 [code]z = _mm256_sign_epi8(x,y) [/code] В зависимости от знака элементов y также обновляется знак элементов x
Я хочу использовать встроенные инструкции или инструкции ассемблера для сдвига 64 8-битных элементов на 1 позицию. Например, это (1, 2, 3,...., 63, 64) В этом (0, 1, 2, 3,...,62, 63) без потери элементов.
для 32 8-битных элементов и AVX, AVX2 можно...
Я хотел бы объединить два вектора по 512 бит, содержащие 8-битные элементы, с помощью AND.
Глядя на Руководство Intel Intrinsics Guide, я вижу некоторые 512-битные операции AND:
__m512i _mm512_and_epi32 (__m512i a, __m512i b)
__m512i...
Имея 2 функции с эквивалентностью алгоритма в обеих сторонах, в c ++ cpp_func1 (обернутый цинтоном) и в cython cython_func1 , быть Основное различие между ними, в котором функция C ++ работает с векторами, и функция цинтона работает с массивом Numpy...
Имея 2 функции с эквивалентностью алгоритма в обеих сторонах, в c ++ cpp_func1 (обернутый цинтоном) и в cython cython_func1 , быть Основное различие между ними, в котором функция C ++ работает с векторами, и функция цинтона работает с массивом Numpy...