Resultados de la búsqueda a petición "simd"
¿Cuál es la penalidad de mezclar el esquema codificado EVEX y VEX?
Es unproblema conocido [https://stackoverflow.com/questions/41303780/why-is-this-sse-code-6-times-slower-without-vzeroupper-on-skylake] que mezclar instrucciones codificadas con VEX e instrucciones que no sean VEX tiene una penalización y el ...
NO falta en SSE, AVX?
¿Es mi imaginación o es unPNOT faltan instrucciones en SSE y AVX? Es decir, una instrucción que cambia cada bit en el vector. En caso afirmativo, ¿hay una mejor manera de emularlo quePXOR con un vector de todos los 1? Bastante molesto ya que ...
Error: conversión de tipos de datos definidos por el usuario en c
Esta es una vista más simple de mi problema, quiero convertir un valor flotante en el tipo definido v4si (quiero usar la operación SIMD para la optimización). Ayude a convertir el valor flotante / doble en un tipo definido. #include<stdio.h> ...
bits de registro avx2 inversos
¿Hay una manera (rápida) de realizar bits inversos de valores int de 32 bits dentro del registro avx2? P.ej. _mm256_set1_epi32(2732370386); <do something here> //binary: 10100010110111001010100111010010 => 1001011100101010011101101000101 ...
Bucle de resto ineficaz en mi código
Tengo esta función: bool interpolate(const Mat &im, float ofsx, float ofsy, float a11, float a12, float a21, float a22, Mat &res) { bool ret = false; // input size (-1 for the safe bilinear interpolation) const int width = im.cols-1; const int ...
Implementación más rápida de la función exponencial usando AVX
Estoy buscando una aproximación eficiente (rápida) de la función exponencial que opera en elementos AVX (punto flotante de precisión simple). A saber -__m256 _mm256_exp_ps( __m256 x ) sin SVML. La precisión relativa debería ser algo así como ~ ...
¿Hay una manera más eficiente de transmitir 4 dobles contiguos en 4 registros YMM?
En un fragmento de código C ++ que hace algo similar a (pero no exactamente) la multiplicación de matrices, cargo 4 dobles contiguos en 4 registros YMM como este: # a is a 64-byte aligned array of double __m256d b0 ...
¿Cómo calcula esta función el valor absoluto de un flotante a través de una operación NOT y AND?
Estoy tratando de entender cómo funciona el siguiente fragmento de código. Este programa utiliza instrucciones de vector SIMD (Intel SSE) para calcular el valor absoluto de 4 flotadores (así, básicamente, una función vectorizada "fabs ()"). Aquí ...
La forma más rápida de descomprimir 32 bits en un vector SIMD de 32 bytes
Tener 32 bits almacenados en unuint32_t en la memoria, ¿cuál es la forma más rápida de descomprimir cada bit en un elemento de byte separado de un registro AVX? Los bits pueden estar en cualquier posición dentro de sus respectivos bytes. Editar: ...
transposición para 8 registros de elementos de 16 bits en SSE2 / SSSE3
(Soy un novato en SSE / asm, disculpas si esto es obvio o redundante) ¿Existe una mejor manera de transponer 8 registros SSE que contengan valores de 16 bits que realizar 24 desbloqueos [lh] ps y 8/16 + barajaduras y usar 8 registros ...