vendredi, août 15, 2014

processeur Risc Sparc M7 : 10 milliards de transistors sur une puce !

Sun vient d'annoncer sa dernière génération de processeurs RISC Sparc : le Sparc M7 (livré en 2015).

La première chose à reconnaître, c'est que Larry Ellison tient parole : quand il avait dit au rachat de Sun par Oracle qu'il "avait vu la lumière" et qu'une des fortes motivations du rachat était la propriété intégrale du processeur Sparc pour assurer l'indépendance future d'Oracle, personne ne le croyait !

En particulier, il avait dit: "Nous n'entrons pas dans le business du matériel. Nous nous n'y attachons aucun intérêt. Nous avons par contre un  profond intérêt pour le domaine des systèmes intégrés". On pensait qu'il n'en voulait en fait qu'au logiciel de Sun, en particulier Java vu son adoption forte dans les entreprises. Eh bien, Larry a tenu largement parole: le M7 est la sixième génération de Sparc produite par Oracle depuis l'acquisition.

Cette nouvelle génération donnera bien davantage de puissance brute de calcul à la gamme des systèmes intégrés Exa (fonctionnant sur Sparc) livrés par Oracle depuis le rachat. Mais, surtout, elle permet aussi à Oracle grâce à  ce statut de "fondeur" de silicium acquis via Sun de mettre des fonctions spécifiques au traitement des requêtes de bases données ("query accelerator") ou à celui du langage Java ("garbage collection") directement au niveau du processeur pour optimiser le fonctionnement du logiciel.

Oracle estime que le boost de performances fourni par cette puce par rapport à son grand frère Sparc M6 est le suivant pour différents types de banchmarks :



Je trouve personnellement fascinant que la loi de Moore continue à rester valide presque 50 ans (grâce à la réduction permanente et rapide de la taille des transistors)  après sa proclamation : le M7 lui fait passer un jalon marquant avec 10 milliards de transistors sur un seul chip

Si je fais bien le calcul, on devrait dépasser les 100 milliards de transistor sur un chip à moins de 10 ans : Intel comme Oracle annoncent des processus de fabrication pour le 5 nanomètres alors que nous en sommes à 20 nanomètres pour l'instant. Donc un potentiel d'augmentation de (20/5) = 4 au carré (puisqu'on travaille sur une surface) soit un facteur 16 encore devant nous. Pas mal de chemin parcouru depuis le million de transistors du 80486 il y a 25 ans ou les 100 millions il y a moins de 10 ans !

La concurrence est dans le même ordre de grandeur : IBM à 4.2 milliards avec le Power8 récemment annoncé, Intel à 4.3 milliards de transistors par chip pour ses derniers Xeon E7 8890 v2.

Ce processeur M7 est donc une bête de course, et plutôt dans la catégorie Formule 1!  Il s'adresse cependant à un segment très restreint : le haut du panier des 155'000 serveurs Risc vendus chaque année, un marché sûrement juteux (fortes marges) mais bien petit comparé aux 10 millions de serveurs x86 vendus annuellement.

La tendance architecturale des dernières années est poursuivie sur le M7: la fréquence d'horloge n'augmente plus vraiment sinon la consommation électrique et les calories dissipées explosent de manière exponentielle! C'est le parallélisme qui augmente grâce aux transistors supplémentaires : le M7 offre 32 cores pouvant exécuter autant d'activités distinctes de manière simultanée, voire même beaucoup plus puisque 8 threads logiciels distincts peuvent être traités sur chaque core matériel qui leur partage ses ressources ("dynamic threading").


Chez Eranea, nous suivons l'évolution de ce marché des processeurs au plus près :
  • la beauté de Java (au coeur de notre technologie de migration) est d'être parfaitement agnostique au processeur (elle redéfinit ses propres instructions et son modèle mémoire : le fameux Java bytecode)  donc totalement portable : les applications Cobol /  mainframe que nous transcodons vers Java peuvent donc être exécutées - si leur taille ou la puissance de calcul nécessaire le justifient - sur le processeur le plus puissant du moment. Ce processeur peut évoluer dans le temps (RISC, x86) d'un fournisseur à l'autre sans que cela ne pose de questions / soucis particuliers : encodage des données, jeu d'instructions, opération de bas niveau.... Le "Write Once, Run Anywhere" (WORA) de Java est un atout précieux ! Nous l'expérimentons souvent sur des OS divers comme Linux, AIX, Windows, Solaris, etc.
  • de très grandes sociétés avec des systèmes transactionnels de très grande taille (plus de 1'000 transactions par seconde) analysent des migrations par transcodage vers Java de leurs applications métier critiques. Il est rassurant pour elles de savoir que la course à la puissance brute se poursuit chez les constructeurs même si les architectures par scalabilité horizontale (basées sur plus de serveurs moins puissants ) que nous prônons permettent d'aller elles aussi très très loin. Avoir des alternatives est toujours rassurant et sain !
Le fun ultime, c'est de se dire que cette puissance de calcul monstrueuse va bien finir par se retrouver dans notre poche (d'ici des années quand même...) sur notre téléphone mobile.

Gageons que les développeurs d'applications mobiles auront d'ici là trouvé les bons moyens, selon la prédiction de Carver Mead,  de "gaspiller ces innombrables transistors"  de manière "intelligente" afin que cet oxymore n'en soit finalement pas un  !

Source: blog Media and Tech (par didier durand)

Aucun commentaire: