> Tech > Vous avez dit milliards ?

Vous avez dit milliards ?

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

L'industrie se doit de déterminer la meilleure manière d'utiliser des milliards de transistors dans la prochaine génération de processeurs, car cette décision fixera le cap en matière de conception des processeurs, pour la prochaine décennie.

Le numéro de septembre 1997 de IEEE Computer Magazine contenait sept articles sur les

Vous avez dit milliards ?

études en cours à  propos d’architectures avec des milliards de transistors,
toutes menées dans les meilleures universités. Certaines des propositions n’étaient
pas très originales : comment continuer en faisant mieux ce que nous faisons déjà .
Quelques unes étaient bien plus hardies, exigeant des modèles de programmation
totalement nouveaux.
Et deux d’entre elles intéressaient IBM, car décrivant des approches semblables
à  celle que nous pratiquons déjà  pour les processeurs AS/400. L’Université
de Washington mène une étude qu’elle appelle SMT (Simultaneous MultiThreading).
Sa philosophie consiste à  partager le matériel du processeur d’une puce entre
plusieurs threads provenant d’une charge de travail multiprogrammée. Ici, un thread
est une entité de travail exécutable dans le système, que l’on peut considérer
comme un flot d’instructions distinctes. SMT est une technique permettant à  plusieurs
threads indépendants d’envoyer des instructions aux unités fonctionnelles d’un
processeur, en un seul cycle.

Cette étude monoprocesseur s’éloigne des architectures monoprocesseur traditionnelles,
qui ne traitent des instructions que d’un thread à  la fois. Bien que
les architectes AS/400 que nous sommes ne soient pas aussi téméraires que ceux
s’occupant de cette étude SMT, nous utilisons déjà  une forme de multithreading
dans les processeurs Northstar actuels.
Chaque Northstar contient deux jeux complets de registres de processeur pour supporter
deux threads d’exécution distincts. Un flot d’instructions et un ensemble de valeurs
de registre sont associés à  chaque thread.
Avec deux jeux de registres, un seul processeur Northstar travaille alternativement
sur deux flots d’instructions indépendants à  la fois. Le processeur
exécute les instructions provenant d’un thread, en utilisant un jeu de registres,
jusqu’à  ce qu’un défaut de cache de niveau 1 (L1) ait lieu. Le Northstar comporte
deux caches L1 de 64 Ko, un pour les instructions et un pour les données, sur
la puce du processeur.
La plupart des autres processeurs attendent que le défaut de cache soit résolu
avant de poursuivre, entraînant beaucoup de temps d’inactivité pour les processeurs
ultrarapides d’aujourd’hui.

Mais ce n’est pas le cas des processeurs Northstar. Quand un défaut de cache survient,
ils commencent à  exécuter les instructions provenant du second thread, en utilisant
le second jeu de registres. Ainsi, le processeur travaille utilement pendant le
traitement du défaut de cache, au lieu de rester inactif. Le temps
minimum pour un défaut de cache L1 du Northstar est de cinq cycles, alors qu’un
changement de thread n’en demande que trois.

Par conséquent, le multithreading ramène la pénalité de cinq à  trois cycles en
cas de défaut de cache L1. En outre, si un défaut se produit également dans la
cache de niveau 2 (L2) externe, la pénalité n’est encore que de trois cycles.
D’après nos études, le processeur Northstar est capable d’augmenter le débit de
traitement de 30% pour un système monoprocesseur, et de la même quantité pour
des systèmes multiprocesseurs en utilisant les deux jeux de registres sur chaque
puce.

De plus, il nécessite moins de 10% d’augmentation dans la zone processeur. L’Université de Stanford, qui propose une autre architecture de processeur
avec des milliards de transistors encore, développe un multiprocesseurs monopuce,
mettant en oeuvre de quatre à  seize processeurs sur une seule puce. Chaque processeur
aura ses propres caches L1 et partagera une vaste cache L2 sur la puce. Les processeurs
peuvent collaborer sur un job parallèle unique, ou exécuter des tâches indépendantes.

De tels multiprocesseurs monopuce nous intéressent aussi beaucoup à  Rochester
parce que notre gigaprocesseur (GP) aura deux processeurs sur la même puce. Les
modèles suivants compteront probablement quatre, huit voire même seize processeurs
sur une seule puce, comme celui de Stanford. Dans un avenir pas si
lointain, on ne trouvera plus d’AS/400 monoprocesseur.
Tous les systèmes livrés, du plus petit au plus grand, présenteront deux processeurs
ou plus sur chaque puce.

Téléchargez cette ressource

Guide de Sécurité IA et IoT

Guide de Sécurité IA et IoT

Compte tenu de l'ampleur des changements que l'IA est susceptible d'entraîner, les organisations doivent élaborer une stratégie pour se préparer à adopter et à sécuriser l'IA. Découvrez dans ce Livre blanc Kaspersky quatre stratégies efficaces pour sécuriser l'IA et l'IoT.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010