Index

Savoir

Faire

Miscellaneous

Evolution ?

 

Un petit article issu d'une réflexion personnelle sur l'évolution de l'informatique.

Où en est-on ?
    Il y a un petit peu plus d'un an et demi, le Pentium4 était mis sur le marché. Des doutes pouvaient être émis sur la nécessité de tout miser sur la fréquence (notamment dans mon article " Le syndrome P4 ", où je concluais que l'acceptation de ce CPU se ferait avec la diminution de son coût ainsi que la disponibilité de logiciels adaptés, c'est à dire utilisant MMX, SSE et SSE2). Aujourd'hui, milieu 2002, on peut dire sans beaucoup se tromper que le Pentium4, à fréquence de fonctionnement de 2,533 GHz et avec un bus à 533 MHz, est le CPU globalement le plus puissant sur micro-ordinateur. Les versions cadencées moins rapidement, couplées à de la SDRAM ou de la DDRRAM, permettent aussi d'obtenir des configurations performantes et à bas prix.

    Pour autant, cet état de fait est plus du à une conjoncture d'évènements qu'à la suprématie des hautes fréquences. Car AMD a un peu laissé tomber le développement de l'Athlon pour se consacrer plus pleinement aux futurs CPUs x86-64 : la conséquence en est que si l'Athlon faisait jusqu'à la version 2000+ globalement jeu égal avec un Pentium4 2 GHz, les versions 2100+ et 2200+ (cette dernière étant réellement cadencée à seulement 1,8 GHz) ne sont sorties que récemment, alors qu'Intel continuait sur sa lancée jusqu'à 2533 MHz.

    On pourra arguer que l'Athlon 1800 MHz est sur certains tests plus lent que le Pentium4 qu'il est censé égaler (2200 MHz). Mais sur d'autres tests il est plus rapide... Peut-on ainsi dire que la fréquence ne signifie rien de bien concret, simplement à partir de la comparaison de deux CPUs issus de concepteurs qui s'affrontent sur le sujet avec des techniques opposées ?

Merci Intel...
    La réponse à la question précédente est difficile à obtenir, c'est pourquoi nous allons nous tourner uniquement vers Intel pour aboutir à une conclusion intéressante.
    En effet, en 1992, le Pentium, successeur du 486, sortait sur le marché. Pour prouver la supériorité de son nouveau produit, Intel proposait l'indice iCOMP (Intel COmparative Microprocessor Performance). On y apprenait qu'un Pentium 100 MHz atteignait le score de 815, alors qu'un 486 DX4 100 MHz plafonnait à 435. Ou encore que le même Pentium à 66 MHz obtenait un score de 567, contre 297 pour le 486 DX2 66 MHz. Même le Pentium 60 MHz obtenait un score de 510, soit plus que le 486 DX4 100 MHz. Les avancées faites avec le Pentium entre autres dans le domaine de la scalarité, de la gestion des caches et de la latence des unités d'exécution résultaient en un gain de performance d'un facteur atteignant presque 2 à fréquence égale !

    Ce qui était vrai il y a dix ans l'est toujours. Il suffit pour s'en rendre compte d'aller voir les résultats des tests SPECFP, si chers à Intel, où un Itanium 800 MHz fait jeu égal avec un Pentium4 2 GHz (notons aussi que le Power4 d'IBM délivre environ 1 SPECFP par MHz, pour environ 0,35 SPECFP par MHz pour le Pentium4). L'exemple est encore plus flagrant, et devrait suffire à démontrer que la fréquence n'est pas tout. Elle n'est qu'un des composants de la performance totale, et à ce titre, il est nécessaire d'analyser en détail les caractéristiques de chaque CPU avant toute comparaison.

Ce n'est pas tout
    Donc voilà, des règles vieilles de dix ans sont toujours valables aujourd'hui car basées sur le bon sens ; le Pentium4 a mis environ dix huit mois pour atteindre l'objectif qui lui avait été fixé dès sa sortie ; et l'histoire semble être un éternel recommencement...

    En effet, j'aime beaucoup faire des comparaisons à mon bon vieil Amiga 500, " ancêtre " de plus d'une dizaine d'années. Pas pour dire qu'il a été l'initiateur de quantités de concepts, mais juste pour voir vers quoi nous avons évolué.

    Personnellement, je trouve que le résultat n'est pas très brillant... Il apparaît de nos jours comme une évidence que les OS solides sont basés sur des noyaux UNIX (BSD, Linux, etc.) ou de type UNIX, agrémentés d'une interface graphique (Quartz pour MacOSX, les classiques Window Managers sous Linux et autres UNIX) : l'Amiga était lui aussi un type d'OS maison inspiré d'UNIX, sur lequel une interface graphique permettait des manipulations simplifiées, tout en permettant l'accès à la ligne de commande.

    Le multitâche est devenu monnaie courante : l'Amiga réalisait cela dans 256 ko de RAM seulement, sans disque dur, et avec un Motorola 68000 qui ne comportait pas de circuiterie pour gérer la mémoire virtuelle.
    Les architectures multiprocesseur, les canaux DMA à outrance et les coprocesseurs spécialisés sont devenus les nouveaux chevaux de batailles pour permettre de repousser encore plus loin la performance : l'Amiga proposait à un 68000 et un x86 de travailler de concert, et laissait le graphisme, le son et les entrées/sorties gérés par des processeurs spécifiques, au milieu d'une architecture mi-unifiée, mi-personnalisée.
    La mode est aussi ces dernières années aux périphériques connectables et déconnectables à chaud : sans aller jusque là, le concept du " on branche, ça marche " existait déjà dans le branchement des cartes d'extension (certes à froid), car celles-ci évitaient les conflits en demandant à l'OS la place dont elles avaient besoin, et pas en s'attribuant arbitrairement telle ou telle ligne d'interruption.
    On cherche aussi de nos jours à développer plus rapidement, avec des objets plus simples à manipuler : faut-il rappeler que la lignée 680x0 Motorola est une merveille à programmer en assembleur, qu'elle permet d'implémenter de manière simple des compilateurs C performants, que les Amigas étaient livrés en standard avec un BASIC performant qui permettait de manipuler les fenêtres, objets graphiques, etc. un peu à la manière d'objets au sens informatique du terme, que les bibliothèques de fonctions dynamiques passaient leurs paramètres en registres pour plus de rapidité mais étaient extrêmement simples à mettre à jour et limitaient les incompatibilités par leur faible interdépendance, et j'en passe ?

    Si l'on ajoute à cela que les Amigas pouvaient facilement être branchés sur la télé, qu'ils permettaient de créer de manière simple des genlocks pour faire des incrustations sur des images video, que les écrans graphiques étaient ouvrables à volonté en fonction de ce que désirait le programme (et pas figés comme aujourd'hui, où seules les fenêtres sont proposées au programmeur), que le synthétiseur de parole (en anglais seulement, snif) était intégré, que le lecteur de disquettes détectait automatiquement l'insertion et l'éjection des supports, que les connecteurs joystick, souris et extension CPU étaient standards, que les démos faisaient facilement des animations de synthèse plein écran à 25 images par seconde sur un 68000 à 7,14 MHz avec son stéréo 4 canaux, que les fichiers musicaux MOD permettaient d'écouter des morceaux sympathiques et de bonne qualité pour un dixième de ce que prend de nos jours un fichier MP3 (j'ai fait la conversion MOD->MP3 de quelques morceaux ces derniers jours), que les traitements de texte de l'époque procuraient déjà les polices vectorielles et la correction orthographique au cours de la frappe, et j'en passe, n'est-on pas en droit de se poser quelques questions ?

    Questions du genre : " à quoi me servent mes 256 Mo au lieu de 256 ko ? ", " à quoi me sert mon processeur 1000 fois plus puissant ? ", " comment vais-je remplir mon disque dur équivalent à 100 000 disquettes Amiga ? ", ou encore " finalement, on s'amusait pas autant, avec des jeux plus simples et des programmes tout aussi performants ? ".
    Bien sûr, les musiques de l'époque n'avaient pas la qualité CD. On ne faisait que des animations de synthèse, et on ne lisait pas logiciellement des DVDs. On ne faisait que balbutier les premières créations 3D, alors qu'aujourd'hui le photoréalisme est la norme. Mais comme corollaire de la dernière question : "finalement, l'Amiga ne serait-il pas parfaitement au niveau des machines et des OS d'aujourd'hui, s'il avait seulement suivi l'évolution matérielle et logicielle de ces dix dernières années ? "

Concepts
    Force est de constater que les concepts n'ont que peu évolué. MacOSX propose aujourd'hui d'utiliser au maximum le côté dynamique de la programmation, en se basant sur le langage ObjectiveC, mais pour le reste (tous OS et machines confondus), la tendance n'a été qu'à l'amélioration de l'existant (ce qui est déjà bien, mais sur dix ans un peu décevant), parfois même en abandonnant des solutions pourtant élégantes. À l'époque de l'Amiga, pour 3000 F (450 euros pour les puristes :-) on pouvait s'offrir une machine des meilleures qui fut pour l'époque question graphisme et son. Pour la même somme en francs constants (euros constants ???) de nos jours, les super-marchés sont les seuls à pouvoir proposer quelque chose de pas trop indigent, et encore souvent architecturé sur une base dépassée, ou comportant toujours une incongruité.

    Les " Assistants Personnels Électroniques " (Personnal Digital Assistant, ou PDA pour les anglophiles) ne sont guère mieux que des bloc-notes à alarmes, parfois affublés d'embryons de traitement de texte, de tableur ou autres lecteurs de films ou de musiques (que l'on gave alors de Mo de RAM pour pouvoir montrer aux collègues quelques secondes de film ou faire écouter quelques minutes de musique). Demain pourrai-je demander à mon PDA de comprendre ce que j'écris en lettres cursives sur la totalité de son écran, afin qu'il me propose automatiquement de ranger les données là où elles doivent aller en fonction de leur nature (comme le proposait il y a un peu moins de dix ans le révolutionnaire Newton d'Apple, abandonné depuis, mais qui ressuscitera peut-être bientôt, enfin je l'espère) ?

    En bref, c'est bien beau de se chamailler sur les MHz, mais est-ce trop demander que toute cette puissance serve à autre chose qu'à " planter " dix fois plus vite, ou à arriver à son niveau d'insatisfaction dix fois plus vite ?

 

P.S. : voilà, c'est fini, j'ai terminé mon quart d'heure " rabat-joie " ; merci à tous pour votre attention, et peut-être que je m'en referai un comme ça, un futur jour de pluie ;-)