Dandu a écrit :
Non, mais ça change rien : "multi processeur" c'est "optimiser pour pleins de coeurs".
Parce que quand t'as 20 coeurs (et 4 qui sont différents, en plus), c'est pas évident de gérer le nombre de threads. Y a pleins de taches qui sont fondamentalement pas découpables en threads, déjà, donc on peut pas toujours trouver assez de trucs à faire en parallèle.
La partie "c'est un seul CPU", de toute façon, c'est un argument fallacieux : d'un point de vue purement technique, c'est deux CPU (avec une liaison interne extrêmement rapide). Que l'OS voit un CPU à 20 coeurs ou deux à 10 coeurs, ça change de toute façon pas fondamentalement les choses.
Même sur un Mac Pro avec physiquement deux CPU, la liaison entre les deux CPU est pas souvent un goulot d'étranglement, en pratique. Y a pas de tellement de tâches qui arrivent à saturer tous les coeurs tout en saturant le lien.
By the way, ça montre surtout qu'il manque un truc dans les M1 : un Turbo. Parce que pour le moment, les fréquences sont assez faibles, et le Turbo sert précisément dans ce genre de cas : accélérer les tâches qui utilisent peu de coeurs. Ca permet de gagner en performances en gardant une consommation à peu près identique en théorie (et c'était le cas jusqu'aux Core de 8e génération). La fusion qui permet de voir une seule puce, c'est surtout utile pour le GPU, en vrai. Parce qu'autant dans les CPU, la liaison est âs souvent un problème, autant dans les GPU, c'est compliqué. Plus le fait que coder pour plusieurs GPU, c'est horrible. Donc là, voir un seul GPU unifié, ça aide pas mal le développeur. Et le bus interne est assez rapide que pour que ça se remarque pas si le pilote gère derrière.
|