Lexique : si vous avez raté le début…

Lexique : si vous avez raté le début…

par Arnauld de La Grandière le Vendredi 13 Février 2009 à 18:06
Multi-quoi?


Penchons-nous maintenant sur l'architecture matérielle : les fabricants de processeurs on longtemps fait la "course au mégahertz". C'était celui qui proposerait le plus grand nombre de cycles de calcul par seconde qui prendrait la tête du marché. Les contraintes matérielles ont fini par mettre un terme à cette course, et pour continuer à gagner en puissance, les constructeurs ont proposé des architectures multi-processeurs, et multi-core, c'est à dire qu'un processeur pouvait également contenir plusieurs cœurs logiques, en d'autre termes des processeurs "virtuels". Le problème, c'est que jusqu'ici l'augmentation de la puissance brute des processeurs était mise à profit automatiquement par les logiciels, alors que les architectures multiprocesseurs doivent être prises en compte spécifiquement par les logiciels pour être exploitées pleinement.

Ainsi, si un logiciel veut tirer tout le jus de nos machines, il faut qu'il divise ses tâches non seulement sur la totalité des processeurs disponibles, mais également sur tous leurs cores. Ajoutez à cela le fait que chaque core peut procéder à des opérations multi-thread, c'est à dire des listes de tâches exécutables simultanément, et on en vient vite à un casse tête pour le programmeur, d'autant que chaque tâche de chaque application est susceptible d'entrer en concurrence avec celles des autres, sans parler du fait que certaines tâches ont besoin du résultat d'une autre pour pouvoir être effectuées. Voilà qui rend la programmation bien délicate, et vous comprenez sans doute mieux pourquoi si peu de logiciels tirent parti de plus d'un processeur, ou s'ils le font, ça n'est restreint qu'à des fonctions bien délimitées. C'est notamment pour répondre à cette problématique qu'Apple a mis sur pied Grand Central, un jeu d'API de Snow Leopard qui sera la gare de triage de toutes ces opérations, permettant aux développeurs de mieux exploiter les architectures multi-processeurs plus simplement. On peut donc espérer de voir nos machines mieux exploitées par les logiciels qui feront usage de Grand Central sous Snow Leopard.

GPGPU… gné?

Mais il est une autre puissance de calcul qui reste peu exploitée, et la source se trouve sur les processeurs des cartes graphiques : ces processeurs hautement spécialisés sont conçus pour traiter très rapidement un flot conséquent de données. Initialement, leurs compétences en matière de 3D étaient entièrement dévolues à la résolution de tâches complexes, comme l'interpolation (permettant de lisser les textures des modèles 3D lorsque leur affichage dépasse leur résolution native), la trigonométrie (au cœur des calculs d'affichage en perspective et de géométrie dans l'espace), etc, chaque nouvelle génération étant capable d'afficher de plus en plus de polygones en simultané, leur attribution mémoire grandissant de pair permettant également de gérer des textures de plus grande résolution. Avec l'arrivée des pixels shaders et des vertex shaders, les cartes sont devenues à même d'effectuer des simulations extrêmement complexes, comme la réfraction de la lumière à travers l'eau ou un verre dépoli par exemple. Ce sont ces dernières fonctions qui ont complété le tableau pour faire de ces processeurs spécialisés des processeurs à usage général. En effet, en faisant "croire" à la carte que les données qu'on lui transmet sont des textures, on peut effectuer sur ces données des calculs à grande échelle de façon extrêmement véloce: le GPGPU était né (pour General Purpose Graphical Processing Unit, unité de calcul graphique à usage général). Mais on retombait dans les mêmes travers que pour les processeurs, chaque constructeur proposant son propre jeu d'API pour exploiter ses cartes graphiques. C'est ce à quoi Apple a cherché à mettre bon ordre avec OpenCL, un jeu d'API qu'elle a mis à disposition de toute l'industrie, en en faisant un standard ouvert, à même de fonctionner sur toutes les cartes. Il se retrouvera au cœur de Snow Leopard, permettant à tous les développeurs d'exploiter la puissance des cartes graphiques des Macs, sans se soucier de leur marque ou de leurs capacités.


Voilà, avec ces quelques éléments, vous avez toutes les bases requises pour comprendre en quoi consistent les évolutions majeures de Snow Leopard, et ce qu'elles pourront vous apporter au quotidien. En bref, nos machines seront susceptibles d'être mieux exploitées par les logiciels. Il reste à voir dans quelle mesure nous gagneront en vitesse, et on peut être certains qu'un flot de comparatifs et de tests seront effectués à la sortie du prochain système d'Apple, ainsi que des applications qui seront mises à jour pour en tirer parti, afin d'en mesurer les acquis.

<< Retour au début


|  |  

3
2
1
Vos réactions (32 réactions)
Moonwalker [13/02/2009 20:07]

Bonne idée que cet article.
raoultcool [13/02/2009 20:39]

Excellent article !!!!!
jpw12 [13/02/2009 20:58]

Extrêmement intéressant, bonne idée!
laurent_iMac [13/02/2009 21:13]

J'ai l'impression que depuis quelques semaines/mois MacGé se"bonifie" vraiment : des labos, des bidouilles, des analyses ainsi que des articles très pointus mais en même temps compréhensible à foison.
Vous avez mangé quoi au p'tit déj. ? Du Snow Léopard à la louche ou tout autres lignes de codes qui fait "pétiller" à ce point vos neurones ? :-)
En tout cas .... bravo, continuez comme cela à vous faire plaisir et par là même à nous lecteurs/lectrices de ce site.
leonzeur [13/02/2009 21:27]

bravo !!
hyper bien expliqué même pour des ignares comme moi dans tout ce domaine !!
on les savoure les derniers articles de mac gé !! vive la qualité
jibe356 [13/02/2009 21:30]

Excellent article!
lord danone [14/02/2009 00:07]

C'est cette fois confirmé, macgeneration est passé de simple site de news, à un magazine mac en ligne. Bravo à tous les rédacteurs, continuez ainsi :)
ericalvarez [14/02/2009 00:13]

Vraiment très intéressant! Merci : ))
ispeed [14/02/2009 00:48]

Moi qui suis très critique je dis bravo à Arnauld de La Grandière enfin un article très bien fait et sans flagornerie
Continuez comme ça, Bravo
Jean Claude Dusse [14/02/2009 00:56]

Glop ! Glop !
Le docteur [14/02/2009 08:43]

Génial cet article. Merci pour la cession de rattrapage !!
docdoc18 [14/02/2009 08:52]

Bonne initiative, l'article est très complet et permet un bon tour d'horizon sur la question.
A noter que l'essentiel des applications que nous utilisons aujourd'hui ne sont pas taillée pour l'utilisation de plusieurs coeurs et que l'apparition de SL ne va rien changer pour nous pendant plusieurs mois, voir 1 à 2 ans selon les applications. A moins que Apple se décide de mettre à jour tous ses logiciels dans ce sens. Ca se serait top!
ricochet [14/02/2009 09:56]

Bravo MacGe ! Décidément incontournable ... Merci pour cet éclairage du soft et du hard.
OuiOui [14/02/2009 10:06]

Je rejoins les autres, l'article est très bien construit et pertinent, merci macGé ^^
Continuez comme ça = )
coincoin13 [14/02/2009 10:12]

Quand on voit que ne nombreuses applications, notamment certains mastodontes, sont encore en Carbon pour leur plus grande partie (Photoshop par exemple) en 2009, j'ai quelques inquiétudes avoir voir mes programmes utiliser les nouvelles API Apple avant quelques années.

Le gros fantasme est que beaucoup pense que SL, à court terme, va tout de suite enfin pouvoir donner tout son sens à l'osmose hardware/software, et booster leur machine instantanément.
Au niveau de l'Os en lui même, je pense que l'on peut faire confiance à Apple, mais niveau appli, "Grand Central" risque de ne pas avoir beaucoup de trafic, ni ne voyageurs pendant un certain laps de temps.

D'ailleurs on ne sait pas vraiment avec l'article si GC et OCL exigent que l'application soit exclusivement écrite en cocoa ou non...

Mais c'est une restructuration sur le long terme, qui va mettre quelques années à porter ses fruits chez les éditeurs, en espérant que les plus petits entrent dans le jeu plus rapidement.

Dans l'idéal, après PPC, ils devraient virer carbon de SL, ou faire un mode de compatibilité à la Classic.
Faire table rase du passé quoi...
3
2
1



Réagir

Cinq consignes avant de réagir :
  1. Rester dans le cadre de la dépêche. Pour des discussions plus générales, vous pouvez utiliser nos forums.
  2. Développer son argumentation. Les messages dont le seul but est de mettre de l'huile sur le feu seront modifiés ou effacés sans préavis par la rédaction.
  3. Respecter les acteurs de l'informatique et les autres lecteurs. Les messages agressifs, vulgaires, haineux, etc. seront modifiés ou effacés sans préavis par la rédaction.
  4. Pour toute remarque concernant le contenu de l'article, pour nous signaler une erreur, une faute d'orthographe, une omission, merci de nous contacter exclusivement par e-mail.
  5. Relisez-vous, et pour les utilisateurs de Safari profitez de l'aide du navigateur : activez le menu édition > Orthographe > Vérifier l'orthographe lors de la frappe.