Resultados de la búsqueda a petición "avx2"

1 la respuesta

Implementación alternativa para la detección de conflictos en AVX2

AVX512CD contiene el intrínseco_mm512_conflict_epi32(__m512i a) devuelve un vector donde para cada elemento ena se establece un bit si tiene el mismo valor. ¿Hay alguna manera de hacer algo similar en AVX2? No estoy interesado en los bits ...

2 la respuesta

¿Cuál es la secuencia de instrucciones de recopilación stride-3 más rápida?

La pregunta:¿Cuál es la secuencia más eficiente para generar una reunión stride-3 de elementos de 32 bits de la memoria? Si la memoria está organizada como: MEM = R0 G0 B0 R1 G1 B1 R2 G2 B2 R3 G3 B3 ...Queremos obtener tres registros ...

1 la respuesta

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 ...

3 la respuesta

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 ~ ...

2 la respuesta

Deshabilite las funciones AVX2 en procesadores que no sean de Haswell

He escrito un código AVX2 para ejecutar en un procesador Haswell i7. La misma base de código también se usa en procesadores que no son de Haswell, donde el mismo código debe reemplazarse con sus equivalentes SSE. Me preguntaba si hay una manera ...

1 la respuesta

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: ...

2 la respuesta

¿En qué situación el AVX2 recopilará instrucciones más rápido que cargar los datos individualmente?

He estado investigando el uso de las nuevas instrucciones de recopilación del conjunto de instrucciones AVX2. Específicamente, decidí comparar un problema simple, donde una matriz de punto flotante se permuta y se agrega a otra. En c, esto se ...

3 la respuesta

Mapa de bits uint8_t óptimo en un vector "bool" SIMD de 8 x 32 bits

Como parte de un algoritmo de compresión, estoy buscando la forma óptima de lograr lo siguiente: Tengo un mapa de bits simple en unuint8_t. Por ejemplo 01010011 Lo que quiero es un__m256i de la forma: (0, maxint, 0, maxint, 0, 0, ...

2 la respuesta

Acceso a la memoria alineado y no alineado con intrínsecos AVX / AVX2

De acuerdo con el Manual del desarrollador de software de Intel (sección 14.9), AVX relajó los requisitos de alineación de los accesos a la memoria. Si los datos se cargan directamente en una instrucción de procesamiento, p. vaddps ...

1 la respuesta

Carga de 8 caracteres de la memoria en una variable __m256 como flotantes de precisión individuales empaquetados

Estoy optimizando un algoritmo para el desenfoque gaussiano en una imagen y quiero reemplazar el uso de un búfer flotante [8] en el código a continuación con una variable intrínseca __m256. ¿Qué serie de instrucciones es la más adecuada para esta ...