Bon, après de très très nombreux essais, j'ai ENFIN réussi à avoir les mêmes performances qu'avec une boucle "parfaite" et même un peu mieux ! Par contre, c'est un peu bizarre, en fait, si je déclare tout inline, et que je définit les fonctions en dehors, par exemple :
1 2 3 4 5 6 7 8
| class MaClasse
{
inline void UneFonction ();
}
inline void MaClasse::UneFonction ()
{
} |
Et bien là les résultats n'étaient pas bon, par contre en écrivant :
1 2 3 4 5 6
| class MaClasse
{
void UneFonction ()
{
};
} |
Et en faisant ça avec toutes les fonctions, les perfs se sont littéralement envolées. Je ne comprends pas tellement pourquoi puisque je vois pas pourquoi il l'inlinerai celles que je définit directement dans le corps de la classe, et pas celles que je définieraient en dehors.
Partager