Ce que j'entends par une machine, c'est de n'avoir qu'un seul espace d'adressage dans l'application, qqs le nombre de CPU dans la machine. C'est possible avec un cluster, mais c'est l'architecture HW qui va permettre ce but dans le cas d'un super ordinateur.
C'est pour cela que je parlais de frequence (en schematisant l'architecture HW) :
-> dans le cas d'un super ordinateur la latence de la memoire est grande, due au fait qu'elle est partagee entre tous les CPUs, donc la frequence des CPU est limitee (pour pas bloquer sur un acces memoire pendant 371 cycles) et c'est le nombre d'operations en parallele qui sera privilegie (avec un compilateur balaise, et encore plus balaise si il est capable de prevoir le temps de latence en scheddulant correctement les instructions).
-> dans un cluster, il y a des petits groupes de CPU. Les CPUs de ces groupes partagent la meme memoire, et un bus doit relier ces groupes entre eux, donc la frequence sera moins directement limite par l'acces memoire (avec un compilateur moins balaise, mais une gestion des acces sans doute chiante).
Maintenant, il n'y a pas qu'un bus memoire, il y a des caches, des acces privilegies sur certains bancs de memoire par certains CPU et d'autres mecanismes qui font qu'un super ordinateur est proche d'un cluster au final. D'autant plus, que plus il y a de CPU, plus la difference s'amoindri.
[^] # Re: Je vote IBM
Posté par zeSixty4Douille . En réponse à la dépêche Les plus puissants ordinateurs du monde sous Linux. Évalué à 5.
C'est pour cela que je parlais de frequence (en schematisant l'architecture HW) :
-> dans le cas d'un super ordinateur la latence de la memoire est grande, due au fait qu'elle est partagee entre tous les CPUs, donc la frequence des CPU est limitee (pour pas bloquer sur un acces memoire pendant 371 cycles) et c'est le nombre d'operations en parallele qui sera privilegie (avec un compilateur balaise, et encore plus balaise si il est capable de prevoir le temps de latence en scheddulant correctement les instructions).
-> dans un cluster, il y a des petits groupes de CPU. Les CPUs de ces groupes partagent la meme memoire, et un bus doit relier ces groupes entre eux, donc la frequence sera moins directement limite par l'acces memoire (avec un compilateur moins balaise, mais une gestion des acces sans doute chiante).
Maintenant, il n'y a pas qu'un bus memoire, il y a des caches, des acces privilegies sur certains bancs de memoire par certains CPU et d'autres mecanismes qui font qu'un super ordinateur est proche d'un cluster au final. D'autant plus, que plus il y a de CPU, plus la difference s'amoindri.