Sans aller jusqu'à l'opti bas niveau, des choses simple peuvent être faites, comme ne pas initialiser 2 fois la même variable, choisir un conteneur en fonction de son utilisation; alors certes on peut espérer que le compilo, un jour, pourra estimer tout seul, la façon dont est utilisé un conteneur et déterminer quid du vector, list, map, hash_map, stack est le plus pertinent, mais aujourd'hui ils ne le font pas encore, et c'est au développeur de réfléchir.
C'est comme les parcours de tableau a rebours en C, si le compilo ne le détecte pas, bonjour la galère.
Dans le même genre, il y a une énorme différence entre
for( int i=0 ; i < T_MAX ; i++)
for( int k=0 ; k < T_MAX ; k++)
somme+=tab[i][k];
et
for( int i=0 ; i < T_MAX ; i++)
for( int k=0 ; k < T_MAX ; k++)
somme+=tab[k][i];
Encore une fois le compilo peut détecter ce genre de détail, mais, c'est «peut», ce n'est pas automatique, et justement si le développeur est au courant de la blague.
L'implémentation peu aussi impacter d'un facteur 1000, voir plus, notamment lorsque les cache miss disparaissent.
Ensuite je ne demande pas d'avoir une connaissance parfaite du processeur, de la taille de son cache ou autre, mais au moins connaître les pièges courant, et un minimum de jugeote.
Il ne faut pas décorner les boeufs avant d'avoir semé le vent
[^] # Re: Rien de transcendant dirait-on
Posté par fearan . En réponse au journal Noop : encore un nouveau langage ou bien nouvelle génération de langage. Évalué à 2.
C'est comme les parcours de tableau a rebours en C, si le compilo ne le détecte pas, bonjour la galère.
Dans le même genre, il y a une énorme différence entre
for( int i=0 ; i < T_MAX ; i++)
for( int k=0 ; k < T_MAX ; k++)
somme+=tab[i][k];
et
for( int i=0 ; i < T_MAX ; i++)
for( int k=0 ; k < T_MAX ; k++)
somme+=tab[k][i];
Encore une fois le compilo peut détecter ce genre de détail, mais, c'est «peut», ce n'est pas automatique, et justement si le développeur est au courant de la blague.
L'implémentation peu aussi impacter d'un facteur 1000, voir plus, notamment lorsque les cache miss disparaissent.
Ensuite je ne demande pas d'avoir une connaissance parfaite du processeur, de la taille de son cache ou autre, mais au moins connaître les pièges courant, et un minimum de jugeote.
Il ne faut pas décorner les boeufs avant d'avoir semé le vent