Formation Apple


Contactez Validus

Formation Apple
 
Accueil
Formation Macintosh
Prestations Validus
Infos techniques
 
Suivez toute l'actualité du Macintosh avec
Mac Génération
 
Mac Passion
Bienvenue chez Validus

cpu G4
Annoncé en Septembre 1999, le Power PC 7400 G4, reposant sur la technologie Altivec, est le premier microprocesseur considéré comme un supercalculateur. Nous entendons par surpercalculateur une unité capable de gérer des calculs de l'ordre du gigaflop (un milliard d'instructions à virgule flottante par seconde). En théorie, la vitesse de traitement du G4 se situe entre 1 et 4 gigaflops.
Les performances du G4 reposent sur une architecture totalement nouvelle et c'est cette dernière que nous allons étudier afin de comprendre son fonctionnement.

architecture g3 g4


Comme nous le démontre la figure précédente, l'architecture du G4 a été totalement remaniée par rapport au processeur G3. Outre la nouvelle unité de traitement vectorielle, on remarque notamment que l'ensemble des bus à destination de la mémoire cache sont d'une largeur de 128 bits. Cela dans le but d'optimiser la vitesse de traitement dont est capable le G4. On retrouve les composants classiques d'un microprocesseur. Cependant la combinaison des différents éléments dont il est constitué lui procure une capacité de calcul sans commune mesure avec son prédécesseurs G3.
Intéressons maintenant plus précisemment aux innovations technologiques du G4:

 

Velocity Engine

Traitement vectoriel

Conçu pour accélérer le traitement des applications multimédias, la notion de Velocity Engine ou Altivec repose sur trois caractéristiques majeures:

Unité vectorielle 128 bits
Cette unité exploite une technologie nommée traitement vectorielle permettant de traiter 128 bits de données simultanément.
Le principe de fonctionnement repose sur la notion de vecteurs. Un vecteur se symbolise par un ensemble de nombre {3,2,5,8}. Tandis que les processeurs classiques ne peuvent gérer qu'un seul nombre à la fois, le processeur G4 gère donc un vecteur et non plus un seul nombre. Cette technique se nomme "traitement parallèle".
A titre d'exemple, imaginons le traitement d'un effet de flou gaussien sous Adobe Photoshop. Un PowerPC G3 ou un Pentium III réalise cette opération pixel par pixel, c'est à dire en mode scalaire. Grâce à un PowerPC G4, Altivec gère la transmission d'un groupe entier de pixels vers le processeur pour traiter l'effet de flou. L'ensemble des pixels formant le vecteur seront donc traiter en même temps.

 

Instructions multimédias SIMD (Single Instructions, Multiple Data)

Il s'agit de 162 instructions multimédias spécifiques permettant au processeur d'exécuter des opérations vectorielles sur des éléments de données multiples. Cette technique appeller SIMD revient à appliquer la même instruction simultanément à plusieurs données différentes.
SIMD équivaut à un modèle de traitement selon lequel le processeur va chercher ses instructions, les interprète puis les exécute. Le PowerPC G4 est ainsi en mesure de traiter jusqu'à 16 octets de données simultanément. Ainsi, lorsque le processeur reçoit une instruction SIMD, cela conduit immédiatement à son exécution sans délai durant lequel le processeur demande la signification de cette instructions.
Le PowerPC G3 n'intègre aucune instruction multimédia, le Pentium III utilise pour sa part un modèle SIMD appelé SSE comportant 127 instructions intégrées.
Parmis ces instructions, figurent des opérations vectorielles telles que "vector multiply" (multiplication), "vector permute" (permutation), "vector sum" (addition).

 

Registre de données étendus

Un registre équivaut à un emplacement mémoire accessible à haute vitesse dans un processeur. Il se distingue par leur rapidité. En effet, il suffit généralement d'un seul cycle d'horloge pour la lecture de deux registres et l'écriture dans un troisième. La mémoire est moins rapide dans la mesure ou un accès peut requérir plusieurs cycles.
Ainsi, compte tenu de la vitesse de traitement des registres de données, un processeur dôté de registres importants gagnera en performances.
A ce niveau, le PowerPC G4 dispose d'un avantage indéniable. En effet, ce dernier comprend 32 registres de 128 bits. A titre de comparaison, le Pentium III est constitué pour sa part de 8 registres de 64 bits. La taille des registres permettant de contenir et de traiter une plus grande quantité de données à la fois, ce sont le nombre et la taille des registres qui déterminent l'efficacité du processeur mesuré sur un cycle d'horloge.

registre g4 p3

 

Nouvelle unité de calcul à virgule flottante

Destiné à effectuer des calculs d'ordre décimal, l'unité FPU du PowerPC G4 dispose d'une conception totalement nouvelle. En effet, cette dernière s'avère désormais capable d'effectuer des calculs à virgules flottantes double précision sur un seul cycle d'horloge. Comparativement, le PPC G3 a besoin de deux cycles pour réaliser le même type de calcul. On entend par "précision" le nombre de position décimale pris en compte dans les calculs.

 

Accès mémoire

Velocity Engine permet l'organisation de l'accés mémoire. Toutefois, de nouvelles caractéristiques du PPC G4 ont également un rôle important lors de ce processus:

 

Interface du bus mémoire MPX

Face à la quantité de données que peuvent gérer les registres, la conception du bus MPX se devait d'alimenter ces derniers autant en quantité qu'en rapidité. Cadencé à 100 Mhz, ce nouveau bus double la bande passante entre le processeur et la mémoire centrale par rapport à un G3, passant d'un débit de 400 Mo à 800 Mo par seconde.
De plus, le bus MPX s'avère capable de gérer de multiples transactions en attente et d'exécuter les instructions dans le désordre.
La rapidité de l'interface MPX s'explique de deux façons:

Elle peut gérer l'exécution d'instructions dans le désordre. En effet, tandis que le PPC G3 avec son interface bus 60x doit attendre de recevoir chaque instruction et la traiter dans un ordre spécifique, le bus MPX ne tient pas forcément compte de l'ordre d'arrivé des données. A titre d'exemple, nous pourrions dire qu'une instruction simple serait exécutée rapidement quelquesoit son ordre d'arrivé. Le processeur la traitant immédiatement sans qu'une instruction précédente plus complexe soit définitivement traitée.

MPX est également capable de traiter simultanément jusqu'à 7 transactions en attente ou des requêtes en mémoire. Le processeur n'a donc plus besoin d'attendre que les données reviennent de la mémoire centrale avant d'en demander d'autres.

 

bus mpx

 

 

Ligne de données mémoires internes 128 bits

Compte tenu des volumes de données traitées par les registres internes et le bus MPX, le PowerPC G4 est doté de lignes de données mémoire interne d'une largeur de 128 bits. Ces dernières permettent la circulation des données provenant ou à destination de la mémoire cache de niveau 1 et des registres.
Une telle largeur de bus contribue à l'efficacité globale du processeur.

memoire g4

bus G3

Prélecture des flux de données

Cette caractéristique permet au PPC G4 d'aller chercher les données avant même que le processeur ne soit prêt à les traiter. Les données sont alors empilées dans les registres intégrés au processeur. Ainsi, lorsqu'une phase de calcul démarre, le processeur est sans cesse alimenté et peut gérer les flux même pendant les calculs.
Le but de la prélecture des données est de fournir au processeur un flux permanent de données.Ces dernières pouvant être dirigées sur n'importe quel emplacement du processeur. Le PPC G3 ne possède qu'un seul flux de 32 bits et doit aller chercher chaque élément puis les transmettre au processeur. Le PowerPC G4 pour sa part s'avère capable de collecter simultanément des données par le biais de 4 flux distincts de 32 bits.

Bus mpx

flux32

Validus : Centre de formation et prestataire de services de l'environnement Apple.
Formation Mac OS X, Mac OS X Serveur, Windows Serveurs, Réseaux TCP/IP et Routeurs CISCO.
Mise en oeuvre Solutions XServe, Netboot.
Infogérance et maintenance parcs Macintosh
Plan du Site