Le processeur est le cerveau de l'ordinateur, il en représente l'intelligence. Pour en comprendre le fonctionnement, je vous propose d'en détailler l'architecture.
Les unités de calcul représentent le cour du processeur car elles en sont la matérialisation physique du processus de calcul. On distingue trois grandes familles d'unités de calcul : Ces unités permettent d'effectuer les calculs arithmétiques (addition et mutiplication) sur les nombres entiers et les opérations de logique (Et, Ou.). Ces unités sont particulièrement utiles pour les calculs génériques comme ceux qu'exigent les logiciels de bureautique et les navigateurs Internet, Elles permettent d'effectuer des calculs mathématiques sur les nombres réels (avec virgule). Plus la précision demandée (nombres de chiffres après la virgule) est grande, plus la difficulté et le temps de calcul seront grands. Ce type d'unité est très particulièrement sollicité dans les jeux, la vidéo, la conception 3D, les applications financières. car toutes ces applications nécessitent un grand nombre d'opérations de calcul sur des valeurs très précises. Ces unités de calcul spécialisées (3D Now, SSE 1/2/3/4.) n'apportent aucune possibilité de calcul non couverte par les deux unités précédentes, elles ont pour rôle d'optimiser les performances du processeur en calculant plus vite des opérations compliquées (nécessitant plusieurs cycles de calcul avec les autres unités) et récurrentes pour un type d'applications. Supposons par exemple que la compression d'une séquence vidéo nécessite : - 30.000 opérations A nécessitant 6 cycles de calcul chacune - 2.000 opérations B nécessitant 2 cycles de calcul chacune - 2.000 opérations C nécessitant 15 cycles de calcul chacune 30.000 Cela donne un total de 214.000 cycles. En réalisant une unité de calcul spécialisée pouvant effectuer l'opération A en un seul cycle, le gain de performances et considérable car le processeur n'aura plus que 64.000 opérations à effectuer c'est-à-dire un gain de 70%. La création d'une unité spécialisée pour l'opération C est moins intéressant car même si cette dernière est la plus compliquée des trois opérations, elle n'est pas suffisamment récurrente pour générer un gain de performances important. Une fois les calculs effectués, certains résultats sont des résultats intermédiaires que le processeur doit utiliser pour obtenir les résultats définitifs. Le stockage de ces résultats intermédiaires, des opérations en suspens. nécessite une mémoire intégrée au processeur appelée « cache ». Elle compte quelques Mo et représente en quelque sorte une extension de la mémoire centrale de l'ordinateur. Le cache processeur permet un gain de performances non négligeable de part sa proximité (le processeur n'a pas besoin d'aller stocker/chercher ses données dans la RAM comme cela était le cas pour les anciens processeurs) et sa fréquence de fonctionnement égale à celle du processeur et donc largement supérieure à celle de la RAM. Evolutions et tendancesAutrefois, l'amélioration des performances d'un processeur passait principalement par l'augmentation de sa fréquence de fonctionnement (nombre de cycles par seconde exprimé en Hz). Aujourd'hui, ayant approché les limites de la matière, les fondeurs sont obligés de trouver d'autres moyens pour répondre à une demande en performances toujours plus grande. La première solution (mécanique) est de multiplier le nombre de processeurs dans un même die (support physique du processeur). Cette approche consiste donc à mettre côte à côte (ou l'un au dessus de l'autre) deux processeurs (principalement les unités de calcul) avec parfois la possibilité de leur faire partager un seul cache mémoire. Cela engendre pour l'ordinateur une capacité de calcul théoriquement multipliée par 2. En pratique, la capacité de calcul obtenue est comprise entre celle d'un processeur mono cour et son double, car il est aujourd'hui difficile d'exploiter les possibilités d'un double cour à 100% car le « multithreading » (exécution simultanée de deux instructions) n'est aujourd'hui que peu utilisé dans les logiciels, les jeux. Prenons un exemple : Dans un premier cas, nous souhaitons effectuer une simulation boursière qui nécessite 100 cycles de processeur. Un processeur mono cour exécutera donc le calcul en 100 cycles et de même pour le double cour car un seul processeur sera utilisé (gain 0%). Dans ce cas le double cour n'apporte strictement rien. Dans un second cas, nous souhaitons effectuer en même temps deux simulations boursières nécessitant chacune 100 cycles de processeur. Un processeur mono cour exécutera donc le calcul en 200 cycles alors que le double cour n'aura besoin que de 100 cycles car pendant que le cour N°1 traitera la première opération, le N°2 en fera de même et en simultané (gain 100%). Dans ce cas le double cour double les performances du système. Vous l'aurez compris, plus de nombre d'opérations exécutées simultanément est grand, meilleur sera le gain d'un processeur multi cour en attendant que les développeurs d'applications permettent de diviser les calculs en plusieurs calculs simultanés afin de mieux tirer profit de la multiplication des cours des processeurs. Cette approche est plus qualitative car elle tente de faire faire au processeur une opérations donnée en moins de cycles que pour un autre processeur. En d'autres termes, il s'agit de concevoir des processeurs plus intelligents capables de faire en tournant à 1 Ghz ce que ferait le processeur de generation précédente en tournant à 1.5 Ghz ou même 2 Ghz. Cette technologie a aussi pour avantage un dégagement thermique plus faible et donc moins de consommation et de bruit de refroidissement ce qui est extrêmement important pour un ordinateur portable. Si AMD a toujours prôné des processeurs intelligents au détriment de la fréquence, Intel ne s'est tourné vers cette approche que dernièrement avec les Pentium M pour ordinateurs portables. Aujourd'hui, les fondeurs vont encore plus loin en combinant les deux approches : multiplication des processeurs aux architectures toujours plus intelligentes (Core 2 Duo, Core 2 Quad, AMD X2..).
Sources : http://www.culturepc.info/comprendre/ordinateur/processeur.htm Copyright 2009 © Club Informatique et Multimédia de Camiers et ses plages, Tous droits reservés |