¿Cuáles son las mejores configuraciones para cosas como MXCSR? ¿Qué modo de redondeo es el más rápido? ¿En qué procesadores? ¿Es más rápido habilitar los NaN de señalización para que me informe cuando un cálculo da como resultado un nan, o esto causa ralentizaciones en los cálculos que no son de NaN?¿Cómo se obtiene la máxima velocidad de SSE?
En resumen, ¿cómo se obtiene la máxima velocidad de los bucles SSE internos?
Cualquier consejo relacionado de velocidad de coma flotante x87 también es bienvenido.
Gracias por el asesoramiento. FTZ hizo una buena diferencia en la velocidad. – FeepingCreature
Los denormales también son una punta dorada (aún más importante, en mi opinión). Los denormales pueden ser hasta 20-50 veces más lentos si tiene mala suerte. – Damon
@Damon "Flush-to-zero" y "denormals-are-zero" son ambos modos de cálculo relacionados con el tratamiento de los denormales (flush-to-zero transforma un denormal que es el ** resultado ** de una operación en cero , mientras que denormals-are-zero convierte denormales que son ** argumentos ** de una operación en cero antes de aplicar la operación). Usar solo uno de estos indicadores es generalmente suficiente para evitar la ruta lenta de los denormales, sugerí que ambos no conocieran los detalles del algoritmo del OP. –