Au-delà de la loi de Moore

Les rumeurs de la mort de la loi de Moore sont allées aussi loin que je me souvienne. Des discussions selon lesquelles nous approchons de la taille d'un atome et que bientôt l'idée entière deviendra non rentable, j'ai entendu il y a 30, 20 et 10 ans. Voici juste des ingénieurs qui les réfutent encore et encore. C'est le génie de l'ingénierie qui a fait de la loi de Moore l'une des «prophéties auto-réalisatrices».

Je ne vais pas dire si la technologie a atteint ses limites ou non. Malgré l'éducation radiophysique, je la comprends très conditionnellement. Ceux qui souhaitent approfondir peuvent vous conseiller de consulter une revue récente . Je souscrirai au point de vue d'un autre penseur très respecté, Bob Colwell .

image

Pendant ce temps, les fabricants de puces continuent de construire (enfin, ou du moins d'annoncer) de nouvelles usines travaillant sur de nouvelles technologies. C'est donc toujours bénéfique. Pour moi, «le patient est plus susceptible de vivre que de mourir». L'expansion de Murovskaya s'arrêtera quand un serveur avec deux processeurs fabriqués en utilisant la nouvelle technologie devient plus cher qu'un serveur avec 4 fabriqués en utilisant l'ancien. Et c'est loin d'être le cas. J'ai travaillé avec 4 têtes et même 8 têtes. Mais ils sont assemblés sur commande et se dressent comme un petit avion.

Ma tâche aujourd'hui est de parler de la façon dont la technologie affecte l'architecture et la programmation. A propos de ce qui nous attend "de l'autre côté de la loi de Moore". Car de nombreuses tendances sont désormais évidentes. Donc.

La surface (volume) du cristal vaut son pesant d'or. Les transistors cessent de «rétrécir» et la taille des puces est limitée . En conséquence, le nombre d'éléments a une limite. Les nouveaux fantasmes deviennent plus difficiles à enfoncer sur un cristal. Au contraire, le prix de la compacité augmente. Les concepteurs se préoccupent beaucoup plus de l'optimisation que de l'innovation. En conséquence, nous verrons de moins en moins d'innovation sur le processeur ou la puce GPGPU. Peut-être même que le logiciel devra être réécrit moins, bien que je ne croie pas en ce dernier.

Discrétion. Étant donné que la taille, la fonctionnalité et la consommation d'énergie de la puce sont limitées, collons autant de puces que possible. Bon et différent (croissance explosive des accélérateurs prédite par Colwell). Ou la même chose (multi-traitement symétrique). Ou généralement avec une logique reprogrammable (FPGA). Chacun de ces scénarios a ses propres mérites. Le premier donne des performances maximales par watt pour une tâche spécifique. Le second est la facilité de programmation. Le troisième est la flexibilité. Quel scénario est mis en œuvre - le temps décidera. Comme j'aime à le dire, la vie montrera tout et jugera tout le monde. Et ce n'est pas long à attendre.

Complication de NUMA: les monocristaux s'éteignent, laissant la place aux chiplets. Ainsi, les fabricants augmentent le rendement du produit. Soit dit en passant, le yalda (rendement) est le pourcentage de puces appropriées, c'est le pire secret de tout fabricant de puces. Surtout au début du processus. Mais un tel «collage» d'une puce à partir de pièces entraîne des difficultés supplémentaires pour les programmeurs. Le temps de communication entre les noyaux à l'intérieur du chiplet et à l'extérieur est différent. Et ce n'est là qu'un exemple d'une structure NUMA (Non-Uniform Memory Access) de plus en plus complexe. L'autre est la topologie des connexions à l'intérieur de la puce. (A plus - Mémoire à large bande passante. A plus - discrétion. A - plus ...) Et tout cela devra être pris en compte.

Le rôle croissant de l'uncore:Puisque nous parlons de communications intraprocesseurs, je mentionnerai une autre tendance intéressante. Si vous regardez attentivement l'activité de fusions et acquisitions des leaders du marché, il est facile de comprendre que tous les géants font la même chose. Intel investit dans la technologie Silicon Photonics et achète Barefoot Networks . NVidia est responsable de l'achat de Mellanox . Et pas Infinibanda pour le plaisir. Tout le monde comprend que le champ de la bataille future est celui des connexions intra et interprocesseurs. Et qui deviendra le «roi de la colline» ne sera pas déterminé par des ensembles d'instructions ou une sorte de logique complexe, mais par des bus et des commutateurs.

«Originalité» (plus précisément, non répétabilité):Je dois parfois travailler avec de grands ensembles de puces. Cela se produit lorsqu'un nouveau cluster pour le calcul haute performance est créé et lancé. Et récemment, j'ai remarqué une chose intéressante. Si les puces antérieures avec le même étiquetage étaient presque indiscernables, chacune d'elles a maintenant son propre «caractère» et «humeur». Le processeur dispose d'un mécanisme de gestion de l'alimentation intégré. Cela dépend du nombre de cœurs en cours d'exécution, des blocs impliqués, de la température, etc., etc. Et il semble que la façon dont le processeur consomme et dissipe l'énergie dépend des conditions de production d'un lot particulier, de sa position dans le rack et de la masse d'autres facteurs non contrôlés. En conséquence, j'ai observé un écart de fréquence (et des performances) de ~ 15%. Bien sûr, cela conduit à toutes sortes de déséquilibres (MPI, OpenMP).Et comment y faire face n'est pas encore très clair. A moins, de faire une distribution de travail dynamique.

Et le dernier est la fréquence: il n'y aura certainement pas de croissance. Pour de nombreuses raisons, notamment la consommation d'énergie, la taille, etc. J'oserais suggérer que la fréquence en général devrait être abaissée. De la manière la plus indolore pour les performances d'un seul thread (c'est-à-dire l'amélioration de l'architecture). Ici, bien sûr, Linpack, aimé de tous les commerçants, en souffrira. Mais le système deviendra plus équilibré et le travail des développeurs de fer sera facilité. Eh bien, dans les applications réelles, moins le cycle accélère le processeur, en attendant les données des périphériques lents (mémoire, grille, disque) - mieux c'est.

C'est ainsi que le monde informatique me semble à l'ère post-lande.
Comment le voyez-vous?

All Articles