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

3 la respuesta

¿Cómo resolver el problema de la alineación de 32 bytes para las operaciones de carga / almacenamiento de AVX?

Tengo problemas de alineación mientras usoymm registros, con algunos fragmentos de código que me parecen bien. Aquí hay un ejemplo de trabajo mínimo: #include <iostream> #include <immintrin.h> inline void ones(float *a) { __m256 out_aligned = ...

2 la respuesta

¿Cómo escribir código c ++ que el compilador puede compilar eficientemente a SSE o AVX?

Digamos que tengo una función escrita en c ++ que realiza multiplicaciones de vectores de matriz en muchos vectores. Se necesita un puntero a la matriz de vectores para transformar. ¿Estoy en lo cierto al suponer que el compilador no puede ...

2 la respuesta

Generar automáticamente instrucciones de FMA en MSVC

MSVC admite instrucciones AVX / AVX2 desde hace años y de acuerdo conesta publicación de blog de msdn [http://blogs.msdn.com/b/vcblog/archive/2014/02/28/avx2-support-in-visual-studio-c-compiler.aspx] , puede generar ...

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

1 la respuesta

¿Cuáles son las mejores secuencias de instrucciones para generar constantes vectoriales sobre la marcha?

"Mejor" significa la menor cantidad de instrucciones (o la menor cantidad de uops, si alguna de las instrucciones decodifica a más de una uop). El tamaño del código de máquina en bytes es un factor decisivo para un recuento de insn igual. La ...

2 la respuesta

Los índices de bytes distintos de cero de un registro SSE / AVX

Si el valor de un registro SSE / AVX es tal que todos sus bytes son 0 o 1, ¿hay alguna manera de obtener eficientemente los índices de todos los elementos distintos de cero? Por ejemplo, si el valor xmm es | r0 = 0 | r1 = 1 | r2 = 0 | r3 = 1 | ...

1 la respuesta

La forma más eficiente de obtener un __m256 de sumas horizontales de 8 vectores __m256 de origen

Sé sumar uno__m256 para obtener un solo valor sumado. Sin embargo, tengo 8 vectores como Entrada 1: a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], ....., ....., 8: h[0], h[1], h[2], h[3], h[4], a[5], a[6], ...

1 la respuesta

¿Dónde está intrínseco '_mm256_pow_ps' de Clang?

Parece que no puedo encontrar los intrínsecos para _mm_pow_ps o _mm256_pow_ps, que se supone que están incluidos con 'immintrin.h'. ¿Clang no define estos o están en un encabezado que no estoy incluyendo?

4 la respuesta

¿Cómo obtener datos de los registros AVX?

Usando MSVC 2013 y AVX 1, tengo 8 flotantes en un registro: __m256 foo = mm256_fmadd_ps(a,b,c);Ahora quiero llamarinline void print(float) {...} para las 8 carrozas. Parece que elIntel Lo intrínseco de AVX haría esto bastante ...

1 la respuesta

Nueva sintaxis de instrucciones AVX

Tenía un código C escrito con algunas intel-intrinsincs. Después de compilarlo primero con avx y luego con los indicadores ssse3, obtuve dos códigos de ensamblaje bastante diferentes. P.ej: AVX: vpunpckhbw %xmm0, %xmm1, %xmm2SSSE3: movdqa ...