FASTER MATH FUNCTONS

Continuando la investigación a través de la red, he encontrado un documento muy interesante, de aquellos que se pueden guardar en la carpeta de documentos/perlas.

El 14 de marzo de 2003, Robin Green, R&D programmer, Sony Computer Entertainment America, dio una ponencia en el GDC (Game Developers Conference) que llevaba como título Faster Math Functions.
En ella se explica el progreso y las diferentes técnicas para acelerar distintos tipos de operaciones en coma flotante mediante varias técnicas matemáticas: resonant filter, Goertzels algorithm, range reduction and reconstruction, minimax polynomials, brute force searching, polynomial approximation, rational polynomials, etc.

Un documento de recomendada lectura a todo aquel aficionado a la demoscene,videojuegos, 3d y todo aquel que necesite acelerar sobremedida sus funciones matemáticas mediante aproximaciones.

A continuacion extraigo un fragmento de la presentacion:

We use math functions like acos() and tan() all the time, but how efficiently are they implemented? How can we trade off accuracy for speed? This lecture explains how to efficiently implement the transcendental functions on modern videogame hardware and the tradeoffs you can make. We cover common floating point "gotchas", range reduction, polynomial approximation, table and semi-table based techniques and ways to leverage SIMD. Attendees leave with a toolbox of techniques for rolling their own function optimized for speed, accuracy or storage. Other topics addressed include: When can software outperform dedicated hardware? What is the smallest possable sine table? The fastest way to generate sine and cosine at the same time and how to abuse floating point values without involving integer registers.

Y como muestra un ejemplo:

exp(x) -1 ≈ x + 0.496879224x² + 0.190809553*x³
sin(x) ≈ x- 0.166666546*x³ + 0.0083321607x^5 – 0.000195152832x^7

Desde esta página http://www.research.scea.com/gdc2003/fa … tions.html podeis descargar la presentación de dicha ponencia y aquí el pdf.

RGREENfastermath_GDC02.pdf



COMENTARIOS

DEJA TU COMENTARIO