Profiler la gestion du cache
Extrait de !687 (comment 333367) :
Au passage, j'ai essayé également
'F'
("major, or I/O-requiring, page faults"), mais ce sont les swaps, on n'en n'est pas à là, cela donnait 0. Ce sont les "caches miss" qui seraient intéressants, mais je n'ai pas l'impression que/usr/bin/time
les donne. Peut-êtreperf
un jour (mais impacte ce que l'on mesure ?).Mais
perf
compte les instructions, pas le temps qu'elles prennent, si ?Oui, mais ce sont des comptes très pertinents. Probablement réduire les
cache-misses
serait décisif. Mais pas l'habitude de l'utiliser. http://www.brendangregg.com/perf.htmlperf stat -e task-clock,cycles,instructions,cache-references,cache-misses ./vidjil-algo -c clones -g germline/homo-sapiens.g:IGH -3 demo/Stanford_S22.fasta
donne chez moi (pendant que... d'autres grosses choses tournent) :
3 041,65 msec task-clock # 0,974 CPUs utilized
7 425 138 862 cycles # 2,441 GHz
4 823 469 985 instructions # 0,65 insn per cycle
164 216 352 cache-references # 53,989 M/sec
114 336 345 cache-misses # 69,625 % of all cache refs
3,123097672 seconds time elapsed
2,744731000 seconds user
0,297908000 seconds sys