FastMath
Peut-on calculer sinus, cosinus, exponentielle... plus rapidement qu'avec les fonctions de <math.h> ? Question intéressante. J'ai regroupé quelques algorithmes glanés sur le net, et les ai recodés bien proprement en C++ en un simple fichier header FastMath.h contenant les fonctions inline suivantes:
La performance de ces fonctions dépend bien sûr du compilateur, mais aussi de l'architecture. J'ai donc effectué quelques test montrant l'efficacité de ces versions dites "fast", sur G4, G5, et i686, avec un gcc 4.0. Les résultats sont ici : FastMath.pdf. Les résultats sont en gros les suivants:
Pour effectuer les tests vous-mêmes, voici une achive zip contenant le code, les Makefile... : FastMath.zip. | ||
Téléchargement
| ||||||||