Les architectures multicœurs vont-elles toucher leurs limites ?

Au-delà de huit cœurs par processeur, les performances des supercalculateurs vont rapidement chuter. Ce problème touchera aussi, dans une moindre mesure, les machines plus classiques

Nos confrères d’IEEE Spectrum ont publié un article intéressant , reprenant les résultats d’une étude menée par les ingénieurs des laboratoires nationaux Sandia de New Mexico. Ces derniers ont simulé les performances des futurs supercalculateurs pourvus de processeurs comprenant de 2 à 64 cœurs.

Les résultats de ces travaux sont alarmants, quoique sans réelle surprise. Entre deux et quatre cœurs par processeur, les performances sont en hausse. Entre quatre et huit, elles commencent à stagner. Au-delà, elles sont carrément en baisse. Un processeur comprenant seize cœurs ne délivre ainsi pas plus de puissance qu’un modèle bicœur.

Le problème provient de la capacité qu’a le processeur à aller lire ou écrire des données en mémoire. Le nombre de cœurs augmente, mais la bande passante ne suit pas. Les ingénieurs du Sandia vont jusqu’à suggérer de couper purement et simplement les cœurs d’un processeur, pour s’en tenir à un maximum de huit.

Évidemment, la solution idéale serait de rapprocher les unités de traitement des composants mémoires. Dans les supercalculateurs, une distance considérable peut être constatée, ce qui empêche l’amélioration de la bande passante. Dans un ordinateur personnel ou un serveur, le problème sera moins critique, mais ne sera pas totalement absent.

Les fondeurs sont parfaitement conscients des limites des architectures classiques. Lors d’une précédente interview, David Kirk, chef scientifique chez Nvidia nous avait confié que la force des cartes graphiques Nvidia ne résidait pas seulement dans le nombre de cœurs disponibles, mais surtout dans la présence d’une large quantité de mémoire vive, accessible très rapidement. Selon lui, une architecture massivement parallèle doit aller de pair avec un système mémoire très performant.