Dual Core : Côté Intel
By Samuel D. - 20/06/2005
Sommaire:

 

Dual Core : Et aprés ?

 

On peut le dire clairement : le Dual Core n'en est encore qu'à ses premiers balbutiements. En effet, les premiers CPUs Dual Core ressemblent très fort à un bricolage sommaire consistant à inclure deux cores conçus pour fonctionner en mono-core dans un même packaging, et à utiliser les bons vieux systèmes de communications utilisés pour le SMP. C'est vrai pour Intel. C'est également vrai pour AMD. Alors qu'attend-on d'un CPU réellement multicore ?

Pour y répondre, nous allons devoir nous livrer à un exercice très difficile : imaginer le futur et ce que pourront être les processeurs de demain, en un mot, spéculer. Pour ce faire, nous disposons de quelques informations glanées ça et là dans des conférences. Nous choisirons de vous parler plutôt de certaines, tout en en occultant d'autres. La raison est simple : en 2000, Intel annonçait, dans ses whitepapers, des CPUs à 10 GHz. L'erreur parait aujourd'hui énorme, mais paraissait très plausible en ce temps là. Bref, si vous retrouvez cet article dans 5 ou 10 ans, peut-être direz-vous que nous avions dit d'énormes absurdités, c'est un risque. Peut-être également que nous avions vu juste. Procédons.

 

  • Multi-Core : Pourquoi ?

La première question à se poser est : le multi-core - Pourquoi ? La réponse semble simple : pour augmenter encore et toujours les performances, en suivant la courbe exponentielle définie par Gordon Moore. Cependant, il existe d'autres moyens d'augmenter la vitesse de traitement, comme le recours massif à la fréquence, la base de l'architecture Netburst. Cette approche aurait dû continuer encore quelques années, au moins jusqu'en 2010. Malheureusement, un sérieux grain de sable est venu gripper les rouages du modèles "tout fréquence" : la dissipation thermique. Obligeant Intel à ralentir dramatiquement son planning de montée en fréquence, et même à annuler certains produits comme Tejas, la dissipation thermique a même fait perdre au géant de Santa Clara le leadership en terme de performance. Acculé, Intel n'a eu pour seule possibilité que d'opérer un virage à 180 degrés en un temps record, et de se lancer corps et âme dans le parallélisme.

Pour ce faire, les plateformes Dual Core, dont les premiers exemplaires sont aujourd'hui disponibles, ont été avancées à la hâte pour continuer à offrir plus de performances. De son côté, AMD n'est pas mieux loti puisqu'il va bientôt devoir faire face à deux problèmes majeurs :

  1. Le vieillissement de l'architecture K7/K8 qui ne va pas tarder à s'essouffler et qui ne sera pas, cette fois, sauvée par Alpha avec une nouvelle architecture toute prête.
  2. Le gain très intéressant en performance apporté par l'intégration du contrôleur mémoire et des liens HT, qui ne pourront pas évoluer ad aeternam.
  3. La limitation en fréquence qui, même si elle ne fait pas tout comme on l'a vu récemment, est tout de même un composant très important de tout système.

Conscient de ces états de fait, AMD profite donc du virage opéré par Intel pour se lancer également dans le multi-cores, afin d'offrir un sursis à son architecture actuelle, qui devra également subir une profonde refonte lorsqu'Intel lancera le successeur du Netburst, cette fois entièrement pensé dans l'optique du parallélisme, ce qui n'est pas du tout le cas du K7/K8 actuel. C'est d'ailleurs pour cette raison qu'AMD a récemment stoppé le développement du K9, qui devait être une énième amélioration du core K7, pour se concentrer sur le K10 (prononcez "K-Ten", ca fait hype). De la bonne tenue de ce CPU dépendra directement la survie d'AMD.

Pour en revenir à nos moutons, il faut maintenant expliquer pourquoi le gain de performances, avec l'architecture actuelle, n'est pas proportionnel à la fréquence. En fait, tout est histoire de cache. Composant primordial et crucial de toutes les CPUs actuels, le cache permet de compenser l'extrême lenteur de la mémoire (et plus encore, du FSB pour les CPUs Intel), par rapport à la vitesse de traitement des unités d'exécutions. Or, plus on monte en fréquence, plus l'influence du cache croît puisque l'écart entre la vitesse de traitement du CPU et la vitesse de la mémoire s'accroît. Un petit graphique pour mieux comprendre :

 

 

Comme on le voit, plus la fréquence augmente, plus le cache hit doit être proche de la perfection pour maintenir le même niveau de performances. Or, les mécanismes de prédictions de branchements ne peuvent se rapprocher à l'infini de 100% et son actuellement bloqué entre 98% et 99%, ce qui semble une limite quasi-infranchissable. Il faut donc trouver une autre approche pour augmenter l'efficacité du cache.

 

  • Multi-Core : Comment ?

Simple : Augmenter sa taille pour augmenter les cache Hits. Et c'est efficace ! En plus, cette technique à pour énorme avantage de ne pas consommer beaucoup plus. En effet, la densité thermique du cache est énormément inférieure à celle du core d'exécution :

 

 

C'est donc clair, l'augmentation du cache n'a quasiment que des avantages et permet de ne pas trop augmenter la dissipation thermique. Le Dothan et ses 2 Mo de cache L2 pour 30 Watts en sont un exemple parfait. Le but est donc de réduire le core d'exécution, d'en mettre plusieurs et d'augmenter le cache pour offrir de meilleures performances. Voyons comment on pourrait définir le multi-core idéal. Pour cela, résumons la situation actuelle sous forme de schéma :

 

 

Voici la solution actuelle, un peu crade, voire beaucoup : On met deux dies identiques, et on double les performances maximums théoriques. Avantage : C'est simple à mettre en œuvre. Problème : Ca chauffe beaucoup trop. Imaginons maintenant la chose suivante : On réduit par quatre la taille du CPU. Or, comme nous l'avons dit, et surtout, constaté depuis ces deux dernières années, la consommation d'un CPU n'est pas directement liée à ses performances, ni à la taille de son die. Donc :

 

 

En divisant la taille du die par quatre, on obtient un CPU, certes deux fois moins performant, mais surtout qui consomme quatre fois moins. Ensuite, on passe en multi-core "propre" avec ce die, c'est à dire en regroupant les caches. On obtient alors :

 

 

Une sorte de multi-core idéal, qui ne consomme pas plus qu'un single core actuel, mais qui est deux fois plus performant. Voila à quoi pourrait bien ressembler le futur CPU Conroë...

 

Suite ( Vision pour 2015 )

Fermer