2010-04-25 7 views
6

¿Hay alguna biblioteca de intrínsecos Intel AVX disponible? Estoy buscando algo similar como encabezado 'sse2mmx.h' que retrocede a los intrínsecos de MMX si los intrínsecos enteros de SSE2 no están disponibles en tiempo de compilación. Por lo tanto, si tuviera una biblioteca similar para AVX podría escribir código optimizado para hardware nuevo que tendría una velocidad casi óptima en caso de que la extensión AVX no esté disponible. Google no ayudó mucho hasta ahora :(intrínsecos de Intel AVX: ¿hay alguna biblioteca de compatibilidad disponible?

Respuesta

8

Intel proporciona un AVX emulation header. No lo he probado, pero citando el artículo vinculado "El archivo de encabezado de emulación AVX utiliza intrínsecos para la anterior instrucción Intel establece extensiones hasta Intel SSE4 .2 Se requiere soporte SSE4.2 en su entorno de desarrollo así como también hardware para usar el archivo de encabezado de emulación AVX. Para usar simplemente tenga este archivo incluido: #include "avxintrin_emu.h" en vez de #include <immintrin.h> "suena como esto es lo que buscando.

Intel también tiene un emulador, llamado SDE, que podría ser útil. No lo he usado para probar el código AVX, pero funcionó bien en mi máquina para probar el código utilizando los conjuntos de instrucciones AES-NI en una CPU anterior, y sé que también es compatible con la emulación AVX. SDE es especialmente útil para verificar su código de manejo de CPUID.

Cuestiones relacionadas