chipster a écrit :-j3 car tu avais 3 cores ??
Non, autant pour moi c'était 5 la base ... la reco classique étant : nombre de cores + 1 et pas -1 ... 4 cores = j5
My bad sur ce coup. mais ça fait un moment que j'ai plus compilé une gentoo.
(d'ailleurs j'aurais pu m'en douter sur un mono-cpu on va pas compiler avec 0 thread
).
chipster a écrit :des perfs jusqu'à 15/17, ça veut dire quoi et tu l'as mesuré comment ?
Je l'ai dit : le temps mis à compiler les paquets (genlop -t) . OpenOffice, le kernel, vlc, firefox... sous gentoo on compile tout alors c'est pas très dur d'avoir des exemples de gros paquets où quelques % de différence se traduisent en minutes.
Bien entendu je nettoyais le cache de compilation à chaque fois pour comparer histoire de pas avoir d'effet biaisant de ce coté.
Après je n'ai pas de i7 et je ne sais pas à quel point on peut gagner de temps en poussant la charge sur ce genre de proco, mais avec 8 cores et une architecture un peu optimisée , pouvoir passer à 64 ne me parait pas d'emblée complètement hors de possibilité.
chipster a écrit : Les 64 threads créés, ils finissent où ?
j'aurai bien une réponse en trois lettres...
Plus sérieusement, ils finissent probablement au même endroit que les 15threads sur mon Q6600.
autant je ne saurais pas décrire les mécanismes dans le détails autant à l'usage tu auras du mal, malgré toute ta science de comment ça marche à l'intérieur, à me convaincre que la théorie l'emporte sur la pratique...
Dis moi que tu as compilé sur un i7 et que tu as observé que les gains en temps de compilation s'arrêtent à une valeur bien en dessous de 64... je te croirai. Mais comme tu as l'air de sous entendre que c'est évident je mets mon grain de sel pour dire que c'est p'tet pas si évident que ça. On peut surcharger les cores avec plein de threads et gagner du temps de compilation !
Après, que le gain ne justifie pas l'effort (sous entendu du patch) , parce que le gain est marginal ou parce qu'il ne va servir à presque personne ou que ceux à qui il peut servir savent se débrouiller autrement... peut être mais de là à dire que ça ne sert à
strictement rien ...
D'ailleurs c'est exactement ce que je lis sur le blog de ck :
une telle optimisation (pour 64 threads de compilation) n'est utile que pour la compilation et pour ceux qui compilent beaucoup et elle peut être réalisée autrement que par le patch présenté... (avec un nice ou par schedtool ).
PS : je n'irai pas jusqu'à dire que je sais comment ça fonctionne , pour de vrai, mais je sais à quoi ça sert et je sais ce que c'est que la compilation parallèle :p