Des logiciels optimisés pour chaque processeur ?

Mobilité

Une nouvelle série de tests, réalisée avec des outils optimisés pour l’architecture du Pentium 4, montre que les performances des processeurs tiennent autant de leur jeu d’instructions que de la fréquence d’horloge. Faut-il pour autant développer des logiciels pour chaque gamme de processeur comme on développe pour Windows et MacOS ?

Intel n’a que très moyennement apprécié les résultats de la deuxième série de tests sur le Pentium 4 publiés par Tom’s Hardware, un site spécialisé dans les tests matériels. Basés sur Flask Mpeg, un logiciel de production de séquences vidéos au format Mpeg 4, les tests montraient que le P4 à 1,5 GHz n’arrivait à produire que 3,83 images par seconde en mode « haute qualité », contre 4,39 pour un Pentium III à 1 Ghz et 6,43 pour un Athlon à 1,2 Ghz ! Autrement dit, le P4 était plutôt décevant.

Intel contre-attaque

La réaction d’Intel ne s’est pas fait attendre. Le fondeur a immédiatement contre-attaqué en indiquant notamment que le logiciel ne tenait pas compte des nouvelles instructions multimédia du Pentium, les fameuses SSE2 (Streaming SIMD Extension 2). Le code source du logiciel Flask Mpeg étant libre, Intel s’est fait fort de fournir à Tom’s Hardware une version optimisée pour ces instructions, en lui demandant de bien vouloir recommencer les tests.

Ce qui fut donc fait (voir les résultats). Les améliorations sont flagrantes ! Tout à coup, le P4 se révèle capable de générer de 14 à 23 images par seconde, selon la qualité choisie, tandis que le PIII 1 GHz stagne à 8 images et que l’Athlon 1,2 GHz dépasse à peine les 11. Et, comme le note l’auteur, ce qui est vrai pour le test Flask Mpeg l’est pour tous les logiciels : ils tournent beaucoup mieux dans des versions optimisées pour les instructions spécifiques au processeur. Autrement dit, le message d’Intel aux développeurs est clair : développez pour le P4 !

Une version pour le P4, une autre pour l’Athlon

Seulement, Intel n’est pas seul. Il est talonné par les excellentes performances d’AMD. Lequel propose son propre jeu d’instructions : le 3D-Now. Du coup, de telles différences dans les résultats amènent forcément à se demander s’il va falloir développer autant de versions de logiciels qu’il y a de versions de processeurs… Comme il y a un Adobe Photoshop pour Mac et un autre quasiment identique pour PC (encore ne parle-t-on que de Windows et non pas de Linux, BeOS…), verra-t-on un Photoshop pour P4 et un autre pour Athlon ? Voire des logiciels purement optimisés pour SSE2 ou uniquement pour 3D-Now ? Evidemment, ce serait l’idéal. Mais c’est peu probable. Car seul un marché suffisamment grand peut inciter les éditeurs à se lancer dans des développements supplémentaires d’un même produit. C’est d’ailleurs ce qui avait failli tuer Apple avant sa reprise en main par Steve Jobs. Les développeurs fuyaient comme la peste un environnement exploité par un trop petit nombre d’utilisateurs. Et un ordinateur sans logiciels, c’est un peu comme une voiture sans essence. Ça ne mène pas bien loin.

Bien sûr, on a peu de doutes quant aux capacités d’Intel à imposer son jeu d’instructions aux développeurs. Reste que cela ne va pas forcément faciliter le choix des utilisateurs. Faudra-t-il choisir ses logiciels en fonction de sa machine ou l’inverse ?

Pour en savoir plus :

* Le site de Tom’s Hardware (en anglais).

* Le site de Flask Mpeg (en anglais).