<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Loi-De-Moore | Dr. Goulu</title><link>https://drgoulu.com/tags/loi-de-moore/</link><atom:link href="https://drgoulu.com/tags/loi-de-moore/index.xml" rel="self" type="application/rss+xml"/><description>Loi-De-Moore</description><generator>HugoBlox Kit (https://hugoblox.com)</generator><language>fr-FR</language><lastBuildDate>Mon, 11 Mar 2013 00:00:00 +0000</lastBuildDate><image><url>https://drgoulu.com/media/icon_hu_eee4a95885829ab2.png</url><title>Loi-De-Moore</title><link>https://drgoulu.com/tags/loi-de-moore/</link></image><item><title>Combien de processeurs pour un cerveau ?</title><link>https://drgoulu.com/2013/03/11/combien-de-processeurs-pour-un-cerveau/</link><pubDate>Mon, 11 Mar 2013 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2013/03/11/combien-de-processeurs-pour-un-cerveau/</guid><description>&lt;p&gt;&lt;em&gt;(article publié dans le cadre de la 
)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Lancé par
 dirigée par
, le &amp;ldquo;
&amp;rdquo; (HBP) vise à simuler un cerveau humain dans un superordinateur d&amp;rsquo;ici dix ans. Cet objectif extrêmement ambitieux a paru suffisamment réaliste à l&amp;rsquo;Union Européenne pour consacrer 1 milliard d&amp;rsquo;Euro à ce projet mêlant neurosciences et informatique.&lt;/p&gt;
&lt;p&gt;Les neurosciences étant traitées par des blogueurs bien plus compétents que moi en la matière, cet article se limite à la partie facile et que je connais un peu : l&amp;rsquo;informatique. D&amp;rsquo;ailleurs, Markram et son équipe poursuivent une approche &amp;ldquo;bottom-up&amp;rdquo;
compatible avec un grand principe de l&amp;rsquo;informatique :&lt;/p&gt;
&lt;blockquote class="border-l-4 border-neutral-300 dark:border-neutral-600 pl-4 italic text-neutral-600 dark:text-neutral-400 my-6"&gt;
&lt;p&gt;Tout doit être construit de haut en bas (top-down), sauf la première fois. (
)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Dès la fin des années 1950 les chercheurs ont analysé le fonctionnement de neurones vivants
et développé des modèles très simplifiés de neurones ayant débouché sur les
 très à la mode dans les année 1990 et qui ont permis de grand progrès dans des applications comme la
 notamment.&lt;/p&gt;
&lt;p&gt;Les modèles actuels de neurones isolés sont beaucoup plus complexes et incorporent des modèles moléculaires comme le
  
ou les
. La simulation en temps réel d&amp;rsquo;un seul neurone exige une mémoire d&amp;rsquo;environ 1 Megabyte pour stocker toutes les variables qui définissent l&amp;rsquo; &amp;ldquo;état&amp;rdquo; du neurone à chaque instant, et une puissance de calcul de 1 Giga
, ce qui correspond:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;au super ordinateur
de 1985&lt;/li&gt;
&lt;li&gt;à un PC
de 1999&lt;/li&gt;
&lt;li&gt;(
) un bon smartphone actuel&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Depuis 2006, le 
 de Markram a simulé non seulement le fonctionnement, mais aussi la croissance d&amp;rsquo;une
 (NCC), une structure d&amp;rsquo;environ 1mm³ comprenant environ 10'000 neurones fortement interconnectés, répartis sur 6 couches. Un superordinateur
 doté de 8192 processeurs pour un total d&amp;rsquo;environ 20 TeraFLOPS a été utilisé, ce qui fonde l&amp;rsquo;hypothèse de l&amp;rsquo;équipe selon laquelle la puissance et la mémoire nécessaires à la simulation augmentent linéairement avec le nombre de neurones, et heureusement pas avec le nombre de
 par exemple.&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;
&lt;img alt=""
srcset="https://drgoulu.com/posts/2013/images/6ea028259540cc1ff30e911eaa6eb4db_hu_ec5540172185c4ce.webp 320w, https://drgoulu.com/posts/2013/images/6ea028259540cc1ff30e911eaa6eb4db_hu_21435dec16d81e43.webp 480w, https://drgoulu.com/posts/2013/images/6ea028259540cc1ff30e911eaa6eb4db_hu_c1784fcf42c8ce6b.webp 666w"
sizes="(max-width: 480px) 100vw, (max-width: 768px) 90vw, (max-width: 1024px) 80vw, 760px"
src="https://drgoulu.com/posts/2013/images/6ea028259540cc1ff30e911eaa6eb4db_hu_ec5540172185c4ce.webp"
width="666"
height="500"
loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
En extrapolant cette tendance linéaire, Markram estime qu&amp;rsquo;un ordinateur d'1 ExaFLOPS (un milliard de milliards d&amp;rsquo;opérations par seconde) doté de 100 PetaBytes de mémoire devrait être capable de simuler un cerveau humain contenant 100 milliards de neurones environ. Et en extrapolant aussi la
, un tel superordinateur sera disponible en 2018.&lt;/p&gt;
&lt;p&gt;D&amp;rsquo;autres
comme
 
,
 
ou même
 qui simule 32'000 neurones sur votre PC confirment grosso-modo ces ordres de grandeur.&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 600px; width: 100%;"&gt;&lt;a href="http://top500.org/statistics/perfdevel/" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2013/images/3a2b6cf709d6fff3b048cdf55a897882_hu_c256babf7da5653c.webp" srcset="https://drgoulu.com/posts/2013/images/3a2b6cf709d6fff3b048cdf55a897882_hu_c256babf7da5653c.webp 320w, https://drgoulu.com/posts/2013/images/3a2b6cf709d6fff3b048cdf55a897882_hu_9b9fe69a00da89d8.webp 480w, https://drgoulu.com/posts/2013/images/3a2b6cf709d6fff3b048cdf55a897882_hu_989aae5e33742bc.webp 600w" sizes="(max-width: 640px) 100vw, 600px" alt="Performance du plus puissant ordinateur (en rouge) au cours du temps selon top500.org" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;Performance du plus puissant ordinateur (en rouge) au cours du temps selon top500.org&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;Le lecteur attentif aura remarqué qu&amp;rsquo;on a &amp;ldquo;perdu&amp;rdquo; deux ordres de grandeur en route : 100 milliards de neurones x 1 GigaFLOPS par neurone devraient donner 100 ExaFLOPS, pas 1. L&amp;rsquo;idée est que les étapes intermédiaires, mesocircuit, puis cerveau de rat, permettront de simplifier la simulation des neurones individuels, voire de la remplacer par un modèle des NCC. Markram considère en effet qu&amp;rsquo;une NCC est &amp;ldquo;est au cerveau ce qu&amp;rsquo;un microprocesseur est à un ordinateur&amp;rdquo;
. Si c&amp;rsquo;est le cas, alors un cerveau serait l&amp;rsquo;équivalent d&amp;rsquo;environ 10 millions de processeurs de 100 GigaFLOPS chacun &amp;ldquo;seulement&amp;rdquo; soit un bon PC actuelCependant, les marges d&amp;rsquo;erreur sont considérables comme on le voit dans la première figure:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;il faudra peut-être une puissance 10x supérieure pour tenir compte de la
&lt;/li&gt;
&lt;li&gt;un autre facteur 10 pour tenir compte des
&lt;/li&gt;
&lt;li&gt;mais surtout un facteur pouvant atteindre 1000 pour simuler la croissance des neurones, leur
 par
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;De plus, l&amp;rsquo;approche du &amp;ldquo;Human Brain Project&amp;rdquo; consiste à initialiser le simulateur avec un cerveau à l&amp;rsquo;état embryonnaire, puis à le &amp;ldquo;laisser pousser&amp;rdquo; en évoluant dans un monde virtuel sur lequel il peut agir par l&amp;rsquo;intermédiaire d&amp;rsquo;un corps virtuel
,
. Il faudra donc des années pour que la simulation converge vers un cerveau adulte si on ne parvient qu&amp;rsquo;à une simulation &amp;ldquo;temps réel&amp;rdquo;. Pour pouvoir effectuer plusieurs simulations de croissance en un délai raisonnable (en &amp;ldquo;tuant&amp;rdquo; le cerveau à la fin&amp;hellip;), il faudrait là encore gagner plusieurs ordres de grandeur.&lt;/p&gt;
&lt;p&gt;Cette approche pourrait nécessiter des millions d&amp;rsquo;ExaFLOPS (je viens d&amp;rsquo;apprendre que ça s&amp;rsquo;appelle des yotaFLOPS),  qui ne seraient disponibles que vers 2040. Ceci justifie le scepticisme de certains
et motive des projets concurrents qui pourraient se révéler complémentaires. Ainsi Obama vient de décider d&amp;rsquo;injecter 3 milliards de dollars sur 10 ans dans le
 qui consiste essentiellement à cartographier le cerveau en activité au niveau cellulaire.&lt;/p&gt;
&lt;p&gt;Si des appareils d&amp;rsquo;imagerie médicale devenaient capables de capturer les quelques 100 PetaBytes d&amp;rsquo;information correspondant à l&amp;rsquo;état instantané d&amp;rsquo;un cerveau vivant, on pourrait imaginer un
 vers un &amp;ldquo;Personal Cerveau&amp;rdquo; de bureau d'1 ExaFLOPS dès 2032
.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 640px; width: 100%;"&gt;&lt;a href="http://stripscience.cafe-sciences.org/articles/author/arnaudrafaelian/" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2013/images/Dessin-Human-Brain-2_hu_48c80249ee16f48a.webp" srcset="https://drgoulu.com/posts/2013/images/Dessin-Human-Brain-2_hu_48c80249ee16f48a.webp 320w, https://drgoulu.com/posts/2013/images/Dessin-Human-Brain-2_hu_2e519a3678422ec2.webp 480w, https://drgoulu.com/posts/2013/images/Dessin-Human-Brain-2_hu_38939f66902cbbe1.webp 640w" sizes="(max-width: 640px) 100vw, 640px" alt="Dessin Human Brain-2" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;dessin: Arnaud Rafaelian, membre de Strip-Science (cliquer)&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;En attendant, il y a toujours moyen de fabriquer un cerveau humain parfaitement fonctionnel, indépendant et consommant peu d&amp;rsquo;énergie électrique en quelques minutes de conception, 9 mois de montage et quelques années de programmation &amp;hellip;&lt;/p&gt;
&lt;h3 id="références"&gt;Références:&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span id="ref-1"&gt;&lt;/span&gt;Henry Markram &amp;ldquo;
&amp;quot;, Pour la Science N°425, mars 2013&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-2"&gt;&lt;/span&gt;Lettvin, J.Y., Maturana, H.R., McCulloch, W.S., &amp;amp; Pitts, W.H. &amp;ldquo;
&amp;rdquo; , 1959 ; Proceedings of the IRE, Vol. 47, No. 11, pp. 1940-51.&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-3"&gt;&lt;/span&gt;Marco A. Herrera Valdez,
, Sandra D. Berger, Stefanie Ryglewski, Carsten Duch, Sharon Crook &amp;ldquo;
&amp;rdquo;  Journal of Computational Neuroscience August 2012, 
&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-4"&gt;&lt;/span&gt;Henry Markram &amp;ldquo;Keynote lecture at Neuroinformatics 2008 in Stockholm, Sweden&amp;rdquo; (
)&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-5"&gt;&lt;/span&gt;Christian Clemençon &amp;ldquo;
&amp;rdquo;, EPFL, 2009&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-6"&gt;&lt;/span&gt;Nicolas Rougier &amp;ldquo;
 &amp;ldquo;, interstices, 2013 (audio 13:22).&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-7"&gt;&lt;/span&gt;&amp;quot;
&amp;rdquo;, Kurzweil AI, 2012&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-8"&gt;&lt;/span&gt;Ed Yong, &amp;ldquo;
&amp;rdquo;, Nature, 2012&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-9"&gt;&lt;/span&gt;Ed Yong &amp;ldquo;
&amp;quot; BBC Future, 8 février 2013&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-10"&gt;&lt;/span&gt;&lt;span class="openbook_template5"&gt;&lt;a href="http://openlibrary.org/authors/OL235116A/Ray_Kurzweil" title="Click to view author in Open Library" target="_blank" rel="noopener"&gt;Ray Kurzweil&lt;/a&gt; (2012). &lt;a href="http://openlibrary.org/books/OL25423653M/How_to_Create_a_Mind" title="Click to view title in Open Library" target="_blank" rel="noopener"&gt;How to Create a Mind: The Secret of Human Thought Revealed&lt;/a&gt;. Viking Adult.&lt;span class="Z3988" title="ctx_ver=Z39.88-2004&amp;amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;amp;rft.genre=book&amp;amp;rft.btitle=How+to+Create+a+Mind%3A+The+Secret+of+Human+Thought+Revealed&amp;amp;rft.isbn=9780670025299&amp;amp;rft.au=Ray+Kurzweil&amp;amp;rft.pub=Viking+Adult&amp;amp;rft.date=2012"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt; (
)&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>Superordinateurs de table</title><link>https://drgoulu.com/2009/03/13/superordinateurs-de-table/</link><pubDate>Fri, 13 Mar 2009 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2009/03/13/superordinateurs-de-table/</guid><description>&lt;p&gt;Depuis de nombreuses années, les
sont formés de très nombreux processeurs calculant en parallèle. Le record actuel est tenu par le
qui comprend 6'948 Opteron bicœurs et 12'960 processeurs
d&amp;rsquo;IBM, contenant chacun
(&amp;quot;
Unit&amp;quot;, SPU).&lt;/p&gt;
&lt;h3 id="combien-"&gt;Combien ?&lt;/h3&gt;
&lt;p&gt;&amp;ldquo;Roadrunner&amp;rdquo; peut effectuer 1
, soit un million de milliards d&amp;rsquo;opérations arithmétiques par seconde et vaut des millions d&amp;rsquo;euros. Vous pouvez aujourd&amp;rsquo;hui assez facilement disposer dans votre PC du millième de cette puissance pour quelques centaines d&amp;rsquo;euros seulement.&lt;/p&gt;
&lt;p&gt;En effet, les
&amp;ldquo;GPU&amp;rdquo; récents sont formés de centaines d&amp;rsquo;
assez semblables aux 8 SPU du Cell. Initialement dédiés à la génération d&amp;rsquo;images réalistes en 3D temps réel et limités au calcul en virgule fixe, les GPU sont devenus capables d&amp;rsquo;exécuter certains programmes en virgule flottante beaucoup plus rapidement que sur les processeurs classiques : c&amp;rsquo;est le calcul générique sur GPU  (
).&lt;/p&gt;
&lt;p&gt;La
offrent désormais une puissance de l&amp;rsquo;ordre du teraflops, soit 200x plus que
. D&amp;rsquo;ailleurs nVidia commercialise désormais ses derniers processeurs sur des
dédiées au calcul, et dépourvues de sortie video, un comble pour des processeurs graphiques !&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 550px; width: 100%;"&gt;&lt;img src="https://drgoulu.com/posts/2009/images/94026009fee5d5ba9d3a9574be8e5250_hu_ba559f086c58f9d1.webp" srcset="https://drgoulu.com/posts/2009/images/94026009fee5d5ba9d3a9574be8e5250_hu_ba559f086c58f9d1.webp 320w, https://drgoulu.com/posts/2009/images/94026009fee5d5ba9d3a9574be8e5250_hu_6db4e47bd048a25.webp 480w, https://drgoulu.com/posts/2009/images/94026009fee5d5ba9d3a9574be8e5250_hu_1283abfc1968a245.webp 550w" sizes="(max-width: 640px) 100vw, 550px" alt="ça ressemple à de la pub, mais ça n&amp;#39;en est pas (hélas)" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;figcaption&gt;ça ressemple à de la pub, mais ça n&amp;rsquo;en est pas (hélas)&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;Ainsi, la science peut bénéficier de processeurs puissants à des prix très bas grâce aux
et de PC familiaux.&lt;/p&gt;
&lt;div class="my-6 mx-auto" style="max-width: 760px; width: 100%;"&gt;
&lt;div class="w-full relative rounded-lg overflow-hidden shadow-md bg-black" style="padding-bottom: 56.25%; height: 0;"&gt;
&lt;iframe
src="https://www.youtube-nocookie.com/embed/jUecNi222Fw"
title="YouTube video player"
style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0;"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
allowfullscreen
loading="lazy"&gt;
&lt;/iframe&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;em&gt;Simulation d&amp;rsquo;écoulement d&amp;rsquo;un fluide par la méthode &amp;ldquo;Lattice Bolzmann&amp;rdquo; exécutée simultanément sur le CPU et sur le GPU&amp;hellip;&lt;/em&gt;&lt;/p&gt;
&lt;h3 id="comment-"&gt;Comment ?&lt;/h3&gt;
&lt;p&gt;La
limite beaucoup le gain de performances obtenu en répartissant un programme existant sur plusieurs processeurs (
). Dans un GPU, les centaines de processeurs travaillant en parallèle ne sont réellement efficaces que s&amp;rsquo;lorsqu&amp;rsquo;ils effectuent tous les mêmes opérations sur des données différentes (
).&lt;/p&gt;
&lt;p&gt;Pour exploiter la puissance des GPU il faut donc re-coder bon nombre d&amp;rsquo;algorithmes et de méthodes numériques en se basant sur une bonne connaissance de l&amp;rsquo;architecture des GPU, et en utilisant des langages de programmation spécifiques. nVidia a pris une longueur d&amp;rsquo;avance dès 2007 en proposant
, une extension du langage C et son compilateur pour les GPU de marque nVidia exclusivement. ATI/AMD a suivi fin 2008 en lançant
, une variante du langage
, lui même dérivé du C par l&amp;rsquo;Université de Stanford. Mais Stream ne fonctionne que sur les GPU d&amp;rsquo;AMD/ATI, évidemment.&lt;/p&gt;
&lt;p&gt;Là dessus, des entreprises comme
ont développé des plate-formes de développement permettant de compiler le même programme C++ pour CPU classiques, GPU nVidia ou ATI/AMD et aussi pour les
de &amp;ldquo;Roadrunner&amp;rdquo; et des consoles PlayStation 3 de Sony.&lt;/p&gt;
&lt;p&gt;Apple a annoncé une nouvelle étape avec
, une autre variante de C qui devrait être supportée par son prochain système d&amp;rsquo;exploitation OS X 10.6 &amp;ldquo;Snow Leopard&amp;rdquo; cette année. Microsoft suivra probablement avec quelque chose d&amp;rsquo;équivalent intégré au Direct X 11 qui accompagnera Windows Seven (si tout va bien&amp;hellip;)&lt;/p&gt;
&lt;p&gt;Resté bien silencieux sur le sujet des GPU, intel prépare sa revanche en 2010 avec son processeur
, qui contiendra quelques dizaines de coeurs de ses processeurs classiques x86, et donc sera en principe capable d&amp;rsquo;exécuter simultanément un grand nombre de programmes habituels, tout en offrant une puissance suffisante pour générer des images en 3D également.&lt;/p&gt;
&lt;h3 id="pour-quoi-"&gt;Pour quoi ?&lt;/h3&gt;
&lt;p&gt;&amp;quot; &lt;em&gt;le PowerXcell 8i s&amp;rsquo;adresse avant tout aux scientifiques et au marché des consoles&lt;/em&gt;&amp;quot;. Cette merveilleuse
s&amp;rsquo;applique également aux GPU : le marché porteur est celui des jeux video, toujours plus gourmands en qualité d&amp;rsquo;image et d&amp;rsquo;animation de scènes 3D complexes, mais aussi en capacité de simulation de phénomènes physiques. On veut de plus en plus de réalisme des chutes, collisions, explosions.&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 500px; width: 100%;"&gt;&lt;a href="http://http.developer.nvidia.com/GPUGems3/gpugems3_part05.html" target="_blank" rel="noopener"&gt;&lt;img src="https://drgoulu.com/posts/2009/images/40dd712b15cbbfe9fbf94f84b24f89a7_hu_cce5c7dba7081f00.webp" srcset="https://drgoulu.com/posts/2009/images/40dd712b15cbbfe9fbf94f84b24f89a7_hu_cce5c7dba7081f00.webp 320w, https://drgoulu.com/posts/2009/images/40dd712b15cbbfe9fbf94f84b24f89a7_hu_d14508cbb7b8c296.webp 480w, https://drgoulu.com/posts/2009/images/40dd712b15cbbfe9fbf94f84b24f89a7_hu_e44eaf18908b5a5b.webp 500w" sizes="(max-width: 640px) 100vw, 500px" alt="un dinosaure s&amp;#39;effondre... : illustration du chapitre de GPU Gems 3 consacré à la simulation physique. Cliquez sur l&amp;#39;image pour accéder au texte" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" data-zoomable /&gt;&lt;/a&gt;&lt;figcaption&gt;un dinosaure s&amp;rsquo;effondre&amp;hellip; : illustration du chapitre de GPU Gems 3 consacré à la simulation physique. Cliquez sur l&amp;rsquo;image pour accéder au texte&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;Jusqu&amp;rsquo;ici les jeux intégraient la mécanique des corps rigides, mais désormais les cheveux et les habits de nos héros virtuels suivent leurs mouvements, car il est possible de simuler la déformation élastique et la rupture. La prochaine étape est de
, on y est presque.&lt;/p&gt;
&lt;p&gt;Or les méthodes nécessaires à ces applications ludiques sont très semblables à celles permettant de prévoir la météo, de simuler des galaxies ou de déterminer les propriétés de molécules chimiques, entre autres.&lt;/p&gt;
&lt;p&gt;Parmi les 200 applications listées sur la
, bon nombre sont des
et d&amp;rsquo;algèbre linéaire pouvant être appliquées dans de nombreux domaines, comme par exemple
qui nécessite d&amp;rsquo;effectuer chaque milliseconde un produit scalaire d&amp;rsquo;une matrice 3000 x 6000 par le vecteur des 6000 mesures pour obtenir les 3000 commandes (
)&lt;/p&gt;
&lt;p&gt;Les logiciels scientifiques usuels commencent à tirer parti de ces librairies de façon quasiment transparente:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;pour Matlab, il existe déjà un
et le l&amp;rsquo;environnement
&lt;/li&gt;
&lt;li&gt;LabView dispose d&amp;rsquo;un suport &amp;ldquo;multicore&amp;rdquo; intégrant Cuda, utilisé dans le projet
&lt;/li&gt;
&lt;li&gt;
 &lt;em&gt;(lien mis à jour le 13.3.12)&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Python, mon langage préféré du moment, peut aussi accéder à la puissance de Cuda grâce à
(&lt;em&gt;faut que j&amp;rsquo;essaie ça asap!&lt;/em&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Et bien d&amp;rsquo;autres applications spécifiques comme:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
, une librairie de
utilisée dans les
de
qui accélère les calculs jusqu&amp;rsquo;à 700x par rapport à un processeur normal.&lt;/li&gt;
&lt;li&gt;Différents solveurs en
.&lt;/li&gt;
&lt;li&gt;Des logiciels de
, appliqués à l&amp;rsquo;imagerie médicale ou au marché de la sécurité. Même l&amp;rsquo;encodage de films peut désormais profiter de la puissance des GPU :
, écrit spécialement pour GPU va extrêmement vite mais le résultat est d&amp;rsquo;une qualité inférieure à celui de 
qui va de 2 à 5 fois plus vite lorsque Cuda est activé.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Quel que soit votre utilisation de l&amp;rsquo;ordinateur, souvenez-vous de faire bien attention au GPU qui équipera votre prochaine machine : ce sera lui qui fera de votre machine un superordinateur de table.&lt;/p&gt;
&lt;h3 id="liens"&gt;Liens:&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;
le site de référence de mon gourou sur ce sujet, JegX&lt;/li&gt;
&lt;li&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;/li&gt;
&lt;li&gt;Damien Triolet, &amp;ldquo;
&amp;rdquo;, sur hardware.fr 2 Mars 2007&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>Loi de Moore ... toujours ?</title><link>https://drgoulu.com/2008/06/19/moore-toujours/</link><pubDate>Thu, 19 Jun 2008 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2008/06/19/moore-toujours/</guid><description>&lt;p&gt;Le premier ordinateur capable d&amp;rsquo;effectuer un million de milliards d&amp;rsquo;opérations par seconde (un petaflop) fait &amp;ldquo;bip-bip&amp;rdquo; depuis quelques jours. Le
supplante ainsi le &amp;ldquo;BlueGene/L d&amp;rsquo;IBM aussi, vieux d&amp;rsquo;une année seulement et qui plafonnait à 0.476 petaflop.&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;
&lt;img alt=""
srcset="https://drgoulu.com/posts/2008/images/70678f9cf3d23156fce460be5fd5572c_hu_a6dcf5d7f2384423.webp 320w, https://drgoulu.com/posts/2008/images/70678f9cf3d23156fce460be5fd5572c_hu_d1303b7becf08938.webp 480w, https://drgoulu.com/posts/2008/images/70678f9cf3d23156fce460be5fd5572c_hu_b90d4e4048632fe8.webp 600w"
sizes="(max-width: 480px) 100vw, (max-width: 768px) 90vw, (max-width: 1024px) 80vw, 760px"
src="https://drgoulu.com/posts/2008/images/70678f9cf3d23156fce460be5fd5572c_hu_a6dcf5d7f2384423.webp"
width="600"
height="450"
loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;D&amp;rsquo;après les mesures de
qui répertorie les 500 plus puissants ordinateurs de la planète, leur puissance augmente avec une régularité de métronome depuis plus de 30 ans, décuplant en 4 ans, donc doublant en un peu moins de 18 mois.&lt;/p&gt;
&lt;p&gt;
En ce qui me concerne, c&amp;rsquo;est assez facile de me représenter cette fantastique croissance : mon PC de bureau actuel correspond assez bien au
alors que j&amp;rsquo;y étudiais en 1986. A l&amp;rsquo;époque c&amp;rsquo;était un honneur assez étroitement surveillé d&amp;rsquo;avoir le droit de faire tourner un programme dessus. Maintenant, il sert de siège dans un couloir.&lt;/p&gt;
&lt;p&gt;Selon top500.org et d&amp;rsquo;autres sources, la progression devrait se poursuivre en tout cas encore une décennie : on devrait avoir un ordinateur de 10 pétaflops en 2012 et un de 100 en 2016, en attendant un &amp;ldquo;roadrunner de bureau&amp;rdquo; aux alentours de 2028.&lt;/p&gt;
&lt;p&gt;La raison de cet optimisme tient au fait que la puissance des ordinateurs résulte de la combinaison favorable de plusieurs facteurs, et que lorsqu&amp;rsquo;on s&amp;rsquo;approche d&amp;rsquo;une limite sur l&amp;rsquo;un des facteurs, ça crée un potentiel d&amp;rsquo;amélioration sur un ou plusieurs autres&lt;/p&gt;
&lt;h3 id="la-loi-de-moore"&gt;La loi de Moore&lt;/h3&gt;
&lt;p&gt;L&amp;rsquo;un des facteurs essentiels est la miniaturisation de l&amp;rsquo;électronique. En 1965,
, un des fondateurs d&amp;rsquo;intel, postula qu&amp;rsquo;on serait capable de doubler chaque 2 ans le nombre de transistors d&amp;rsquo;un circuit électronique à prix constant. Sa prédiction s&amp;rsquo;est extraordinairement bien vérifiée non seulement pour les microprocesseurs, mais aussi pour les mémoires RAM :&lt;/p&gt;
&lt;p&gt;[&lt;/p&gt;
&lt;figure class="aligncenter" style="max-width: 553px; width: 100%;"&gt;&lt;img src="https://drgoulu.com/posts/2008/images/c3ded1f5fdbc8c362d185f208bfec178.gif" alt="](http://www.intel.com/content/www/us/en/silicon-innovations/moores-law-technology.html)Cliquer pour un site d&amp;#39;Intel consacré à la loi de Moore" loading="lazy" class="rounded-lg shadow-sm w-full h-auto" /&gt;&lt;figcaption&gt;](
pour un site d&amp;rsquo;Intel consacré à la loi de Moore&lt;/figcaption&gt;&lt;/figure&gt;
&lt;p&gt;Il faut bien remarquer que l&amp;rsquo;on parle ici du nombre de transistors et pas de la puissance du processeur, qui d&amp;rsquo;ailleurs double en 18 mois, soit plus vite que le nombre de transistors ! Comment est-ce possible ?&lt;/p&gt;
&lt;h3 id="la-fréquence"&gt;La fréquence&lt;/h3&gt;
&lt;p&gt;Autour de 1986, j&amp;rsquo;ai assisté à une conférence de Cray à l&amp;rsquo;EPFL qui expliquait en substance : &amp;ldquo;nos ordinateurs sont ronds parce que les ordinateurs du futur devront être ronds. Dans le Cray XMP, à 100 MHz, le courant parcourt moins de 3m dans les fils entre 2 coups d&amp;rsquo;horloge. A 1GHz, si on y arrive un jour, ça ne sera que 30 cm. Pensez-y : les processeurs ne pourront pas être à plus de 30cm de la mémoire !&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Aujourd&amp;rsquo;hui, si les processeurs travaillent autour de 3 GHz et la mémoire autour de 1 GHz, c&amp;rsquo;est beaucoup parce que la miniaturisation a réduit la longueur des &amp;ldquo;cables&amp;rdquo;. gravés dans le silicium ou imprimés dans la résine, on connait leur longueur, leur section et la distance aux conducteurs voisins avec une précision extrême, ce qui permet de les optimiser en tenant compte de tous les effets électromagnétiques étranges survenant à ces fréquences.&lt;/p&gt;
&lt;p&gt;Petite anecdote à ce propos : il y a 20 ans on apprenait qu&amp;rsquo;il était assez facile de déboguer un circuit digital en ralentissant son horloge, éventuellement jusqu&amp;rsquo;à la commander à la main avec un petit switch&amp;hellip; On m&amp;rsquo;a dit que ce n&amp;rsquo;était plus possible actuellement : un Pentium ne fonctionne carrément pas du tout à 1 Hz, car ses circuits sont conçus pour la haute fréquence.&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;
&lt;img alt=""
srcset="https://drgoulu.com/posts/2008/images/eff0f91c64b5f70bbfbd37e7bdd18588_hu_b2907d28d12d349b.webp 320w, https://drgoulu.com/posts/2008/images/eff0f91c64b5f70bbfbd37e7bdd18588_hu_13defaeec6bc2ed3.webp 480w, https://drgoulu.com/posts/2008/images/eff0f91c64b5f70bbfbd37e7bdd18588_hu_207d454f9761056b.webp 495w"
sizes="(max-width: 480px) 100vw, (max-width: 768px) 90vw, (max-width: 1024px) 80vw, 760px"
src="https://drgoulu.com/posts/2008/images/eff0f91c64b5f70bbfbd37e7bdd18588_hu_b2907d28d12d349b.webp"
width="495"
height="317"
loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;Malgré ceci, en 2003 la fréquence des processeurs qui croissait rapidement s&amp;rsquo;est retrouvée rapidement limitée en dessous de 4 GHz, entre autres pour des raisons thermiques.&lt;/p&gt;
&lt;p&gt;En effet, un circuit consomme d&amp;rsquo;autant plus d&amp;rsquo;électricité qu&amp;rsquo;il fonctionne vite, ce qui fait
, et ils n&amp;rsquo;aiment pas ça. Les Cray 1 et XMP étaient refroidis par une circulation de liquide entre les circuits imprimés, le Cray 2 était carrément immergé dans du réfrigérant liquide, et on se demandait bien quelle serait la prochaine étape. Mais là encore, la miniaturisation a permis de faire des machines tout aussi puissantes refroidies par de simples ventilateurs assistés éventuellement de
.&lt;/p&gt;
&lt;h3 id="gaas-optique-quantique-"&gt;GaAs, optique, quantique &amp;hellip;&lt;/h3&gt;
&lt;p&gt;Pour contourner les difficultés rencontrées avec l&amp;rsquo;augmentation des fréquences, on a parfois proposé des ruptures technologiques assez radicales. La plus ancienne et la moins radicale concernait l&amp;rsquo;utilisation d&amp;rsquo;
à place du silicium. En principe, les transistors à GaAs sont beaucoup plus rapides que ceux au silicium et auraient permis de fonctionner à des dizaines de GHz, mais ils souffrent aussi de problèmes tels que la mise au point de circuits GaAs pour le
a contribué à la faillite de l&amp;rsquo;entreprise Cray research.&lt;/p&gt;
&lt;p&gt;L&amp;rsquo;optique est aussi souvent citée comme une technologie de substitution possible à l&amp;rsquo;électronique. Certains circuits optiques spécialisés très rapides ont été réalisés, mais rien qui ne puisse prétendre concurrencer un ordinateur actuel.&lt;/p&gt;
&lt;p&gt;Même dans le domaine du stockage, et malgré les CD et le DVD, l&amp;rsquo;optique n&amp;rsquo;a pas réussi à s&amp;rsquo;imposer en informatique. En 1988, j&amp;rsquo;ai assisté à une présentation de Pinnacle à l&amp;rsquo;EPFL qui disait en substance : &amp;ldquo;voici le premier disque capable de stocker 1Gb sur un seul plateau. Oui mesdames et messieurs, il est optique car il est évident que jamais un disque magnétique n&amp;rsquo;arrivera a stocker une densité pareille d&amp;rsquo;information&amp;rdquo; &amp;hellip;&lt;/p&gt;
&lt;p&gt;De même, l&amp;rsquo;informatique &amp;ldquo;quantique&amp;rdquo; permet de rêver à des machines basées sur des principes totalement différents de ceux de Von Neumann, mais rien de concret ne laisse croire que cette technologie puisse jouer un rôle important en informatique dans les prochaines décennies.&lt;/p&gt;
&lt;h3 id="parallélisme-à-tous-les-étages"&gt;Parallélisme à tous les étages&lt;/h3&gt;
&lt;p&gt;Si la densité des transistors sur une puce augmente exponentiellement, le nombre de défauts sur une tranche de silicium limite toujours la taille maximale des puces pouvant être produites. A un certain point, il devient possible de mettre deux &amp;ldquo;coeurs&amp;rdquo; de processeur sur la même puce. Puis quatre (18 mois après&amp;hellip;). intel et AMD nous proposeront peut-être des Hexiums et des Octérons dans 1 an ou 2, mais ce n&amp;rsquo;est pas sur, car vous avez peut-être déjà un processeur équipé de 100 ou 200 unités de calcul dans votre PC, sans le savoir.&lt;/p&gt;
&lt;h4 id="lapport-des-gpus"&gt;L&amp;rsquo;apport des GPUs&lt;/h4&gt;
&lt;p&gt;Depuis quelques années on assiste à
(Graphics Processing Unit) : le processeur équipant une bonne carte graphique (nVidia ou ATI) effectue nettement plus de calculs que le processeur central (CPU) de votre PC :&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;
&lt;img alt=""
srcset="https://drgoulu.com/posts/2008/images/92d9996311ff6934d737ff74313187d6_hu_5e8f21c0ed4dd39.webp 320w, https://drgoulu.com/posts/2008/images/92d9996311ff6934d737ff74313187d6_hu_dd5ef2d1cce7eb8.webp 480w, https://drgoulu.com/posts/2008/images/92d9996311ff6934d737ff74313187d6_hu_a5bc6d76c9befdfa.webp 542w"
sizes="(max-width: 480px) 100vw, (max-width: 768px) 90vw, (max-width: 1024px) 80vw, 760px"
src="https://drgoulu.com/posts/2008/images/92d9996311ff6934d737ff74313187d6_hu_5e8f21c0ed4dd39.webp"
width="542"
height="316"
loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;Jusqu&amp;rsquo;à récemment, l&amp;rsquo;architecture des GPU était uniquement destinée à la production d&amp;rsquo;images de scènes 3D en temps réel. Mais désormais ces processeurs peuvent être utilisés pour le calcul scientifique, la simulation de phénomènes physiques et d&amp;rsquo;autres applications exigeant une grosse puissance de calcul (voir mon blog
à ce sujet)&lt;/p&gt;
&lt;p&gt;nVidia vient de
, doté de 1.4 milliards de transistors qui réalisent 240 coeurs fournissant 930 Gigaflops : l&amp;rsquo;ordinateur le plus puissant du monde de1992 est maintenant dans votre carte graphique !&lt;/p&gt;
&lt;p&gt;Les GPU ne sont cependant pas (encore?) capable de faire fonctionner des programmes &amp;ldquo;normaux&amp;rdquo; : il faut toujours un CPU pour faire tourner un système d&amp;rsquo;exploitation, Word, Firefox 3 et quelques autres logiciels simultanément, ce qui justifie 2 voire 4 coeurs, mais probablement pas 6 ou 8.&lt;/p&gt;
&lt;h4 id="vers-un-mix"&gt;Vers un mix&lt;/h4&gt;
&lt;p&gt;
Un des processeurs les plus puissants actuellement est le &amp;ldquo;
&amp;rdquo; d&amp;rsquo;IBM qui équipe la console PlayStation 3 (voir
) Il contient 1 coeur de processeur &amp;ldquo;classique&amp;rdquo; et 8 petits coeurs &amp;ldquo;SPE&amp;rdquo; plus inspirés de ce que l&amp;rsquo;on trouve dans les GPU. Le coeur classique fournit 20 GFlops avec des nombres en double précision, les 8 &amp;ldquo;SPE&amp;quot;s montent à 200 GFlop en simple précision, suffisante pour beaucoup d&amp;rsquo;applications&lt;/p&gt;
&lt;p&gt;Depuis qu&amp;rsquo;AMD a racheté ATI et qu&amp;rsquo;intel s&amp;rsquo;est mis à (essayer de) faire des processeurs graphiques, il n&amp;rsquo;y a plus guère de doute : les futurs processeurs combineront la flexibilité des CPU actuels et la puissance brute des GPU, et cette combinaison rendue possible par la Loi de Moore continuera à faire progresser la puissance de nos ordinateurs au rythme immuable du doublement chaque 18 mois encore de nombreuses années.&lt;/p&gt;
&lt;h3 id="et-après-"&gt;Et après ?&lt;/h3&gt;
&lt;p&gt;Il y a bien un moment où les limites physiques seront atteintes : un conducteur métallique doit tout de même avoir quelques atomes de diamètre, comme
. Actuellement les processeurs les plus fins ont des &amp;ldquo;fils&amp;rdquo; de 45nm, soit environ 200 atomes de large. Admettons qu&amp;rsquo;on peut les réduire encore d&amp;rsquo;un facteur 10, ce qui donne une densité 100x plus élevée que l&amp;rsquo;on atteindra, selon la Loi de Moore dans 13 ans environ. Que faire après ?&lt;/p&gt;
&lt;p&gt;La meilleure réponse à cette question que j&amp;rsquo;aie entendu est celle du prof.
lors de sa leçon terminale. En substance il disait &amp;ldquo;jusqu&amp;rsquo;à maintenant, on ne grave les puces que sur la surface du silicium, sur des fractions de micron d&amp;rsquo;épaisseur. On pourrait déjà simplement faire de la gravure sur les deux faces du wafer pour doubler le nombre de transistors. Et puis on pourrait faire des couches multiples. Sur une épaisseur de wafer de silicium, disons 1 mm, on a de la place pour 1000 couches de 1 micron, ça laisse encore 20 ans de plus de validité à la loi de Moore.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;On estime que la puissance d&amp;rsquo;un cerveau humain équivaut à 10 Petaflops, soit la puissance cumulée des 500 plus puissants ordinateurs actuels, qui occument au moins 500 salles actuellement. En 2012, l&amp;rsquo;ordinateur le plus puissant fournira la même puissance dans une seule salle, et en 2020 environ vous devriez l&amp;rsquo;avoir sur votre bureau, ou dans la console de jeu familiale. Si les programmeurs travaillent aussi bien que les fabricants de processeurs, peut-être qu&amp;rsquo;enfin,
, votre PC saura vous reconnaitre et vous appeler par votre prénom&amp;hellip;&lt;/p&gt;
&lt;h3 id="références"&gt;Références:&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span id="ref-1"&gt;&lt;/span&gt;
avec
&lt;ol&gt;
&lt;li&gt;&amp;ldquo;
&amp;rdquo;&lt;/li&gt;
&lt;li&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-2"&gt;&lt;/span&gt;&amp;quot;
&amp;rdquo; sur Tom&amp;rsquo;s Hardware&lt;/li&gt;
&lt;li&gt;&lt;span id="ref-3"&gt;&lt;/span&gt;Jean-Michel Billaut &amp;ldquo;
&amp;rdquo;&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>La montée en puissance des GPUs</title><link>https://drgoulu.com/2007/11/02/la-montee-en-puissance-des-gpus/</link><pubDate>Fri, 02 Nov 2007 00:00:00 +0000</pubDate><guid>https://drgoulu.com/2007/11/02/la-montee-en-puissance-des-gpus/</guid><description>&lt;p&gt;Dans les ordinateurs vendus depuis 2003 environ, le microprocesseur (CPU) fourni par Intel ou AMD n&amp;rsquo;est plus le composant le plus puissant, et souvent plus le plus couteux non plus. Désormais c&amp;rsquo;est le GPU, le Graphics Processing Unit, qui détermine largement la puissance d&amp;rsquo;un PC. Strictement limités au graphisme il y a peu, ces processeurs sont désormais capables d&amp;rsquo;effectuer certains calculs nettement plus vite que les processeurs classiques. Actuellement, la puissance de calcul du G80 de nVidia est 5 à 6 fois supérieure à celle du Core 2 Duo d&amp;rsquo;Intel, voire plus (1, 2).&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;
&lt;img alt="img0019319.jpg"
srcset="https://drgoulu.com/posts/2007/images/92d9996311ff6934d737ff74313187d6_hu_5e8f21c0ed4dd39.webp 320w, https://drgoulu.com/posts/2007/images/92d9996311ff6934d737ff74313187d6_hu_dd5ef2d1cce7eb8.webp 480w, https://drgoulu.com/posts/2007/images/92d9996311ff6934d737ff74313187d6_hu_a5bc6d76c9befdfa.webp 542w"
sizes="(max-width: 480px) 100vw, (max-width: 768px) 90vw, (max-width: 1024px) 80vw, 760px"
src="https://drgoulu.com/posts/2007/images/92d9996311ff6934d737ff74313187d6_hu_5e8f21c0ed4dd39.webp"
width="542"
height="316"
loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
&lt;em&gt;puissance de calcul des GPU et CPU (
)&lt;/em&gt;&lt;/p&gt;
&lt;h3 id="conséquence-immédiate-"&gt;Conséquence immédiate :&lt;/h3&gt;
&lt;p&gt;Si vous achetez un ordinateur pour y faire fonctionner les applications les plus exigeantes, c&amp;rsquo;est-à-dire les jeux vidéo, il faut faire plus attention au choix du GPU qu&amp;rsquo;au CPU. Vous ne gagnerez que quelques pourcents de performance avec un CPU plus rapide qui vous coûtera quelques centaines de francs, alors que la même somme investie dans une carte graphique basée sur un GPU plus récent ou puissant peut doubler le nombre d&amp;rsquo;images / seconde (fps) de vos applications favorites.&lt;/p&gt;
&lt;h3 id="un-peu-darchitecture-des-processeurs"&gt;Un peu d&amp;rsquo;architecture des processeurs&lt;/h3&gt;
&lt;p&gt;Cette situation est la conséquence de cahiers des charges différents assignés aux deux composants:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;le CPU est &amp;ldquo;généraliste&amp;rdquo; : il doit être capable d&amp;rsquo;exécuter plusieurs programmes différents quasi simultanément, de réagir aux actions de l&amp;rsquo;utilisateur et de gérer les nombreux périphériques de l&amp;rsquo;ordinateur, fonctionnant à des vitesses différentes&lt;/li&gt;
&lt;li&gt;le GPU est historiquement spécialisé : sa tâche est de produire des images à une cadence régulière, ce qu&amp;rsquo;il peut faire en exécutant le même programme simple sur des données différentes, correspondant par exemple à des objets 3D distincts ou à des portions distinctes de l&amp;rsquo;écran.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ceci a conduit à des architectures différentes pour les deux types de processeurs :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;les CPU comportent aujourd&amp;rsquo;hui 2 ou 4 &amp;ldquo;coeurs&amp;rdquo; complexes accédant aux données à travers une grande mémoire cache, le tout synchronisé par une importante logique de contrôle&lt;/li&gt;
&lt;li&gt;Sur la même surface de silicium, un GPU moderne contient jusqu&amp;rsquo;à 128 unités de calcul simples, mais très peu de mémoire cache et de logique de contrôle.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;
&lt;img alt="img0019320.jpg"
srcset="https://drgoulu.com/posts/2007/images/5f8d34d07bdd8aff1ff47d09bf9b05a5_hu_a977ad561a2c0959.webp 320w, https://drgoulu.com/posts/2007/images/5f8d34d07bdd8aff1ff47d09bf9b05a5_hu_dd993cf6cd5c6a33.webp 477w"
sizes="(max-width: 480px) 100vw, (max-width: 768px) 90vw, (max-width: 1024px) 80vw, 760px"
src="https://drgoulu.com/posts/2007/images/5f8d34d07bdd8aff1ff47d09bf9b05a5_hu_a977ad561a2c0959.webp"
width="477"
height="186"
loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;em&gt;architecture des GPU et CPU (
)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Cette différence d&amp;rsquo;architecture fait qu&amp;rsquo;il n&amp;rsquo;est pas possible d&amp;rsquo;exécuter sur le GPU un programme &amp;ldquo;classique&amp;rdquo;, écrit pour le CPU car:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;les unités de calcul (ALU) du GPU sont individuellement moins puissantes qu&amp;rsquo;un coeur de CPU.&lt;/li&gt;
&lt;li&gt;Un GPU est un processeur SIMD, ou &amp;ldquo;Single Instruction Multiple Data&amp;rdquo; : toutes les ALU d&amp;rsquo;un GPU doivent exécuter le même programme en même temps, alors que chaque coeur de CPU peut exécuter des programmes distincts de façon asynchrone (MIMD)&lt;/li&gt;
&lt;li&gt;les échanges de données entre les ALU de GPU sont beaucoup plus limités qu&amp;rsquo;entre des coeurs de CPU&lt;/li&gt;
&lt;li&gt;la structure &amp;ldquo;pipeline&amp;rdquo; des GPU fait que leurs performances sonttrès dégradées dès qu&amp;rsquo;il y a des tests dans le programme. Il faut programmer les GPU sans &amp;ldquo;if &amp;hellip; then .. &amp;quot; !&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La principale conséquence de ces différences hardware est que les langages de programmation usuels ne sont pas adaptés à la programmation des GPU. Des langages spécifiques ont été définis, initialement pour la programmation des &amp;ldquo;shaders&amp;rdquo;, programmes réalisant tous les effets graphiques des cartes modernes. Mais ces langages permettent aussi la &amp;ldquo;programmation générale des GPU&amp;rdquo; (ou
), dont j&amp;rsquo;ai déjà parlé
,
, et
:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;nVidia a défini le langage
comme &amp;ldquo;C pour graphiques&amp;rdquo;&lt;/li&gt;
&lt;li&gt;ATI a plutôt soutenu le standard
défini par le standard
&lt;/li&gt;
&lt;li&gt;Microsoft a encore une fois grandement contribué aux progrès de l&amp;rsquo;humanité en dotant son système maison Direct3D d&amp;rsquo;un langage de shader dont l&amp;rsquo;innovation essentielle consiste à changer une lettre au standard . C&amp;rsquo;est HLSL. (Non, pas de lien pour eux, z&amp;rsquo;avez qu&amp;rsquo;à chercher.)&lt;/li&gt;
&lt;li&gt;nVidia a par contre fait un réel pas en avant en proposant son système
 qui permet de développer directement ses GPU haut de gamme en C &amp;ldquo;classique&amp;rdquo; , à l&amp;rsquo;aide de librairies spécifiques.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="perspectives"&gt;Perspectives&lt;/h3&gt;
&lt;p&gt;Du point de vue matériel, les processeurs du futur combineront sans doute les avantages respectifs des GPU et des CPU. Voici la stratégie probable des principaux acteurs du marché :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Après le rachat d&amp;rsquo;ATI, AMD a tout en main pour combiner les deux types de processeurs de façon optimale&lt;/li&gt;
&lt;li&gt;intel, dont les GPUs ont des performances lamentables, essaie de multiplier le nombre de coeurs de ses CPU tout en s&amp;rsquo;inspirant de certaines techniques des GPU&lt;/li&gt;
&lt;li&gt;nVidia va logiquement tenter de généraliser ses GPU pour leur permettre d&amp;rsquo;exécuter du code de CPU&lt;/li&gt;
&lt;li&gt;On l&amp;rsquo;oublie souvent, mais le processeur
  d&amp;rsquo;IBM développé en collaboration avec Toshiba et Sony pour la Playstation 3 est probablement le précurseur de cette nouvelle génération de processeurs.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Du point de vue logiciel, deux tendances s&amp;rsquo;affrontent:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;la définition de langages spécifiques comme GLSL, ou prenant en compte explicitement le parallélisme à la manière des librairies de multithreading existantes&lt;/li&gt;
&lt;li&gt;le développement de compilateurs capables de générer du code GPU optimisé à partir de sources en langages classiques, à la manière de CUDA&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Il est probable que dans un premier temps les langages comme GLSL jouent le rôle d&amp;rsquo; &amp;ldquo;assembleur des GPU&amp;rdquo; utilisé pour la création de librairies, que des applications en C utiliseront de manière transparente.&lt;/p&gt;
&lt;h3 id="sources"&gt;Sources:&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;Damien Triolet &amp;ldquo;
&amp;rdquo;, BeHardware, March 21, 2007&lt;/li&gt;
&lt;li&gt;Jean Etienne, &amp;ldquo;
&amp;rdquo;, Futura-Sciences, 31 octobre 2007&lt;/li&gt;
&lt;/ol&gt;</description></item></channel></rss>