Je n'aurais pas appelé ça une introduction, mais c'est certainement plus simple à lire que le micro-code d'un processeur :)
Ceci dit, 120 pages de gros contenu bien technique, c'est quand même plus qu'une introduction :)
Version imprimable
Oui, le document est connu et a été recommandé dans une discussion récente sur le forum.
EDIT : recommandé par Jean-Marc Bourguet dans cette discussion :
http://www.developpez.net/forums/d10...age-nrc-cache/
Oui c'est une référence. (et pourtant je suis pas un fan de Drepper)
Oups :( j'avais vu la discussion mais je me souvenais plus de ce document... j'étais jeune, naïf et inconscient à l'époque :)Citation:
Oui, le document est connu et a été recommandé dans une discussion récente sur le forum.
EDIT : recommandé par Jean-Marc Bourguet dans cette discussion :
http://www.developpez.net/forums/d10...age-nrc-cache/
J'ai testé les amélioration de Arzar sous linux (ubuntu 10.10 64b g++ 4.5) mais les résultats sont différents :
- version 0: 3.681 (version d'origine)
- version 1: 0.576 (réorganisation des boucles)
- version 2: 0.578 (initialisation du tableau de sortie)
- version 3: 0.526 (sortie de xij1 de la boucle)
- version 4: 0.634 (mise en cache)
Donc, l'organisation du l'ordre des boucles influence beaucoup sur les performances, par contre, les autres non (et la version avec tentative de mise en cache diminue les performances, contrairement à ce que j'avais avec le trie par bulle) cf pièce jointe pour le code
Bonsoir,
a priori ce document devrait t'intéresser :
http://www.lamarca.org/anthony/pubs/cachesort.pdf
Il analyse l'influence des caches sur des algorithmes de tri.