La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Quelques réflexions sur le futur de l’informatique

Présentations similaires


Présentation au sujet: "Quelques réflexions sur le futur de l’informatique"— Transcription de la présentation:

1 Quelques réflexions sur le futur de l’informatique
Bonjour à toutes, bonjour à tous. Au nom de Microsoft, je vous remercie d’être venus si nombreux à ces « journées académiques Microsoft Research 2005 ». En mon nom propre, je tiens également à vous remercier de me donner le plaisir de me trouver au milieu de chercheurs, ce qui me rappelle les excellents souvenirs que j’ai de la période de ma vie où j’ai été moi-même chercheur avant… de mal tourner. Alors que l’industrie informatique ne se remet que très péniblement de l’éclatement de la bulle Internet, alors que de nombreuses entreprises peinent à retrouver un sens à leur existence et alors que la recherche française et européenne traverse une crise matérielle et existentielle sans précédent, il m’a paru opportun de participer à ces journées en tentant de partager avec vous quelques réflexions personnelles - que d’aucuns pourront trouver iconoclastes - à propos du futur de l’informatique. Commençons par le hardware… Bernard Ourghanlian Directeur Technique et Sécurité – Microsoft France

2 Pour que les choses soient claires…
Le présent est indéfini, le futur n’a de réalité qu’en tant qu’espoir présent, le passé n’a de réalité qu’en tant que souvenir présent. Jorge Luis Borges Extrait de Fictions Relisez les nouvelles de Jorge Luis Borges ! C’est un véritable plaisir !

3 Le rapport ops/s/$ a eu trois phases de croissance
Mécanique Relais Doublement en 7,5 ans Tube, transistor,.. Doublement en 2,3 ans Microprocesseur Doublement en 1 an Voici un tableau qui présente la façon dont les choses ont changé depuis le temps de Charles Babbage. L’objectif est de tenter de mesurer le rapport prix-performance de ces systèmes. Larry Roberts a défini un rapport sous la forme : (nombre d’opérations par seconde) * (nombre de bits par opération) / (prix du système sur 3 ans). En 1969, il a constaté que ce rapport doublait à peu près tous les 18 mois. Cette observation a été faite au même moment que l’observation de Gordon Moore à propos du silicium mais mesuré au niveau du système. Entre 1900 et 1945, les systèmes étaient mécaniques ou électro-mécaniques. A cette époque, la performance doublait environ tous les 7,5 ans. Puis l’on est passé aux tubes et aux transistors et le temps de doublement est tombé à 2,3 ans. En 1985, les microprocesseurs sont arrivés. A travers la combinaison d’une diminution du prix global des machines et d’une augmentation de la vitesse de ces machines, le temps de doublement est tombé finalement à 1 an. Cette accélération du rapport prix/performance a pour conséquence de changer les règles de choix et de conception de systèmes d’information. De tels graphiques s’appliquent également au coût du stockage et de la bande passante. Larry Roberts, 1969

4 La loi de Moore et ses conséquences
Le rapport prix/performance double tous les 18 mois Un facteur 100 par décennie Progression dans les 18 prochains mois = la somme de TOUS les progrès précédents Nouveau stockage = la somme de tout l’ancien stockage (depuis l’origine des temps) Nouvelles capacités de traitement = la somme de toutes les anciennes capacités de traitement (depuis l’origine des temps) Escherichia coli double toutes les 20 minutes ! La loi de Moore est, sans nul doute, celle qui façonne de la façon la plus fondamentale notre industrie. Cette loi stipule que la densité des circuits électroniques est multipliée par 4 tous les 3 ans. L’allusion à la bactérie Escherichia coli n’est pas fortuite : elle sert à la fois à illustrer le fait que la nature évolue infiniment plus vite que l’informatique mais aussi à mettre l’emphase sur la notion de complexité (au sens étymologique) sur laquelle nous reviendrons dans la suite. On peut débattre longuement sur les perspectives d’évolution de la loi de Moore. D’un côté : Gordon Moore prévoit maintenant que sa loi ne restera pas indéfiniment vraie. Il pense que, dans les dix prochaines années, elle sera satisfaite, mais au-delà, il prédit un ralentissement, le rythme se réduisant à un doublement du nombre de transistors par unité de surface tous les quatre ans (donc un doublement de performance tous les trois ans environ). Si l’on s’en tient au perfectionnement des techniques de gravure optique des puces, on devra utiliser des longueurs d’onde de plus en plus courte. Or, au mieux, on ne peut graver des traits qu’avec une précision de l’ordre de la longueur d’onde utilisée. Comme plus rien n’est transparent pour les longueurs d’onde très courtes, on ne peut plus concevoir et réaliser des lentilles pour contrôler la gravure au-delà d’une limite qu’on n’est pas loin d’atteindre. Aujourd’hui, les longueurs d’onde utilisées se situent entre l’ultraviolet et les rayons X. La dernière émanation du Pentium 4, par exemple, est dessiné avec une gravure de 130 nanomètres. On étudie déjà ce que l’on va pouvoir faire avec des longueurs d’onde de 80 nanomètres et l’on envisage pour la prochaine décennie des longueurs d’onde de 15 nanomètres, qui semblent la limite des méthodes actuelles. Au-delà, les procédés de lithographie devront utiliser les rayons X (technologie étudiée par IBM) ou des faisceaux d’électrons (technologie étudiée par Bell), mais ces nouvelles méthodes ne sont plus de simples prolongements de ce qu’on sait faire, elles demanderons donc des investissements nouveaux colossaux… et de la chance, car on ne peut être certain que cela va marcher. 15 ans auparavant

5 La loi de Moore et ses conséquences
Le rapport prix/performance double tous les 18 mois Un facteur 100 par décennie Progression dans les 18 prochains mois = la somme de TOUS les progrès précédents Nouveau stockage = la somme de tout l’ancien stockage (depuis l’origine des temps) Nouvelles capacités de traitement = la somme de toutes les anciennes capacités de traitement (depuis l’origine des temps) Escherichia coli double toutes les 20 minutes ! Suite de la page précédente De l’autre : La loi de Moore, relativement précise, s’applique sur une assez courte période de temps car, dans l’esprit de son inventeur, elle ne concerne vraiment que la technologie des circuits intégrés qui sont dessinés en utilisant une lithographie optique classique sur du silicium. Les autres méthodes de lithographie étudiées, les idées d’ordinateurs optiques, quantiques ou à ADN constitueront des sauts technologiques dont personne aujourd’hui ne peut vraiment être certain du succès. Dans 20 ans, ou bien nous aurons rencontré un mur, et les performances auront cessé de croître au rythme actuel, ou bien nous aurons réussi une transition technologique. La prévision pour le siècle qui vient de commencer doit donc se fonder sur une vue plus générale provenant de l’étude du passé sur une période incluant des transitions technologiques importantes. Plusieurs de ces études ont été menées, dont celle de Ray Kurtzweil (the Age of Spiritual Machines, Penguin Books, 1999) qui couvre le XXe siècle dans sa totalité. Au cours du XXe siècle, une multitude de technologies de calcul ont défilé : machines mécaniques (à base d’engrenages et de tringles métalliques), puis machines électromécaniques (assemblage d’interrupteurs commandés par des électroaimants – appelés « relais » - et connectés), puis machines électroniques (construites avec des kilomètres de fils et des milliers de lampes), puis machines à transistors isolés (fichés individuellement sur des cartes), et enfin machines à circuit intégrés (comportant des transistors dessinés simultanément par lithographie optique par centaines, puis par millions). Les transitions technologiques se sont non seulement faites à chaque fois que cela a été nécessaire, sans que jamais la capacité de calcul ne stagne, mais, en fait, les transitions ont conduit à un progrès qui s’est légèrement accéléré, passant d’un doublement de performances tous les trois ans au début du XXe siècle, à un doublement tous les ans aujourd’hui. 15 ans auparavant

6 Évolution du graphique
Amélioration par un facteur 100 en 3 ans Les évolutions des contrôleurs graphiques ont largement dépassé la loi de Moore. Fin 1998, pour 250 $, on pouvait disposer d’une carte graphique traitant un million de polygones par seconde et produisant donc de belles animations 3-D en images de synthèse. On peut trouver, pour un prix équivalent, des cartes susceptibles d’afficher 100 millions de polygones par seconde à la fin Le gain en performance a donc été d’un facteur 100 en trois ans, ce qui correspond à un facteur 10 en 18 mois, bien plus que le doublement habituel. L’explication de ces progrès accélérés se trouve dans le succès commercial des jeux utilisant les simulations 3-D qui ont conduit à la mise au point de puces spécialisées ; celles-ci bénéficient à la fois des progrès de l’intégration (le nombre de transistors par unité de surface) de la fréquence plus élevée des processeurs (ces deux facteurs conduisant au doublement tous les 18 mois), et tirent aussi avantage d’une meilleure conception des algorithmes et du dessin optimisé des circuits. Les progrès de la maîtrise mathématique et le savoir-faire spécialisé sont finalement l’origine du dépassement des prévisions : non seulement l’électronicien avance, mais aussi le mathématicien et l’informaticien. Triangles/ seconde

7 Évolution du stockage de masse
Amélioration par un facteur 8 en 4 ans Il en est de même du stockage de masse. En fait, les capacités disque ont été améliorées par un facteur 1000 dans les 15 dernières années, ce qui est cohérent avec la loi de Moore mais le taux de transfert en Mo/s n’a été amélioré que d’un facteur 40 dans le même temps. Dans le domaine du stockage des données sur disques magnétiques, la loi de Moore s’est appliquée sans fantaisie jusqu’en 1998, mais, depuis, suite à des avancées techniques accélérées (ici, il ne s’agit plus de densité de transistors, mais de maîtrise des constituants magnétiques), l’augmentation de la capacité de stockage est multipliée par 3,5 tous les 18 mois, beaucoup plus que ce que prévoit la loi de Moore standard. Les disques durs d’un téraoctet dont nous allons pouvoir disposer d’ici peu permettront de stocker l’équivalent d’un million de livres de 200 pages, ou 400 cassettes vidéo VHS, ou encore toutes les conversations d’une personne pendant toute sa vie ! On atteindra bientôt les limites d’évolution de la densité du stockage de masse en utilisant les techniques actuelles. La limite théorique à laquelle il est fait référence ici est la limite dite de « l’effet superparamagnétique ». Cet effet apparaît quand l’énergie utilisée pour le stockage magnétique devient comparable à l’énergie d’agitation thermique : les fluctuations perturbent le stockage. Il existe cependant quelques alternatives nouvelles comme : Les NEMS (Nano Electro Mechanical Systems) : (utilisation d’un microscope électronique à effet tunnel) Le procédé « Millipede » (IBM Zurich) Procédé de stockage thermo-mécanique (creux dans un film de polymère), en remplacement des bandes ou Cdrom. Les têtes de lecture/écriture sont fixes, un film de polymère se déplace et est marqué par des têtes micro-mécaniques (utilisation du microscope à force atomique). Les MRAM (Magnetic RAM) fondées sur les MTJ (Magnetic Tunnel Junctions). Voir plus loin Mémoires holographiques : une « page » (une matrice) d'une représentation binaire des données est stockée sous forme d'hologramme dans un cristal photo-sensible (niobate de lithium) Ces perspectives semblent indiquer qu’il sera possible de dépasser les limites classiques. Il n’en reste pas moins vrai que le temps de parcours séquentiel des disques n’évolue pas à la vitesse de l’augmentation de la densité ; on peut donc envisager dans un futur proche un disque (absurde) d’un TO dont le temps de parcours sera de 2,5 heures…. Gigaoctets par disque

8 Réseaux : la loi de Gilder 3 fois la bande passante/an pour les 25 prochaines années
Aujourd’hui : 40 Gb/s par canal (λ) 12 canaux par fibre (wdm) = 500 Gb/s Groupe de 32 fibres = 16 Tb/s/groupe Dans les laboratoires : 3 Tb/s/fibre (400 x WDM) En théorie 25 Tb/s par fibre 1 Tb/s = la totalité de la bande passante WAN aux USA en 1996 ! La bande passante agrégée double tous les 8 mois! En 1995, George Gilder (*) a prédit que la bande passante réseau triplerait tous les ans pendant 25 ans. Jusqu’à présent, cette loi semble se vérifier. Paradoxalement, le lien le plus rapide sur le campus de Microsoft à Redmond est le lien 2,5 Gb/s vers le Pacific Northwest GigaPOP. Ceci inverse les rapports de vitesse entre WAN et LAN : il faut trois liens Gigabit-Ethernet pour saturer le lien WAN. La vitesse des liens réseau est sur le point de se « généraliser » à 1 Gb/s avant de passer à 10 Gb/s en utilisant des liens point-à-point switchés. Le coût d’envoi d’un message est donné par la formule : Temps= CPU émetteur+ CPU receveur+ octets/bande passante. Traditionnellement, les réseau hauts débits ont été limités par le surcoût logiciel. Le coût CPU de l’émetteur et du receveur est typiquement de instructions puis de 10 instructions par octet. Ainsi donc, l’envoi de 10 Ko coûte environ instructions, soit environ 1 ms de temps CPU. Le temps de transmission de octets sur un réseau Ethernet est de mois d’une ms. Le LAN est donc limité par le CPU, pas par le temps de transmission. Malheureusement, en raison de la limite de la vitesse de la lumière, il faut 60 ms pour réaliser un round trip autour de l’Amérique du Nord, de l’Europe ou de l’Asie et cette limite, dans l’état actuel de nos connaissances en physique ne saurait être franchie. Toutefois, cette bande passante de 3 Tb/s nous permettra de concevoir des systèmes qui cacheront les données localement et accéderont aux données à distance si nécessaire. Wdm : Wave-length Division Multiplexing. Multiplexage en longueur d'onde. Technique de multiplexage utilisée sur les réseaux à fibres optiques, qui consiste à envoyer sur une même fibre optique plusieurs signaux de couleurs différentes en même temps (ce qui multiplie évidemment la quantité d'information transmise). (*) 1 fibre = 25 Tb/s

9 Il y a donc quelques tendances favorables de l’industrie…
La loi de Moore continue de se vérifier La plupart des experts s’accordent pour penser que la loi de Moore pourrait continuer d’exercer ses effets jusqu’à 16 nm, c’est-à-dire jusqu’à 2018 ou 2020 Après cela, il se probablement nécessaire de recourir à une sorte de molecular computing ou à d’autres types de paradigmes qui restent à définir Les capacités de traitement en parallèle augmentent à tous les niveaux : Au sein d’un seul chip (plusieurs CPU / composant aujourd’hui) Au sein d’un seul nœud (des dizaines de CPU / PC dès 2006) Au travers la multiplicité de périphériques de plus petite taille (cartes à puce, RFID,…)

10 Il y a donc quelques tendances favorables de l’industrie…
Les bus et interfaces hardware continueront de faire face aux évolutions de la loi de Moore en passant de plus en plus du « parallèle » au « série » ce qui aura l’effet de bord inattendu d’accélérer la « désagrégation des moyens de traitements » La bande passante des réseaux locaux continuera d’augmenter : Ethernet 20 Gb sera standard sur les PC dans les 5 ans D’ici 3 ans, il sera moins cher d’ajouter une interface radio à un périphérique plutôt qu’une interface USB : Les radios ont l’avantage de suivre la loi de Moore, ce que ne permettent pas les câbles de cuivre… Ces deux courbes de coûts vont bientôt se croiser et il sera plus économique d’ajouter une interface radio plutôt qu’une interface USB

11 D’autres tendances favorables de l’industrie…
De nombreux transistors seront utilisés sur les NIC afin de remplacer le logiciel qui s’exécute aujourd’hui dans les CPU : RDMA (Remote DMA) et TCP Offload Chiffrement RAID Codec Audio et Video Parsing XML et SOAP A partir de la fin de l’année, tous les PC seront 64 bits L’année prochaine pour les portables Tous les PC seront équipés de DSP en standard

12 D’autres tendances favorables de l’industrie…
Les capacités de stockage et la puissance des cartes graphiques évoluent plus rapidement que la loi de Moore : Les capacités disque doublent tous les 12 mois Le débit des processeurs graphiques au sein de leur pipeline double tous les 12 mois

13 D’autres tendances favorables de l’industrie…
Disques durs La densité par unité de surface des plateaux des disques durs qui a crû d’environ 100 % par an, continuera d’évoluer sur la base de 50 à 60 % par an, ralentissant éventuellement à 30 % en 2008 Un PC typique aura 1 TO en 2008 En 2008, la seconde génération de disques SATA (Serial ATA) aura un taux de transfert (séquentiel) de 300 MO/s Il faudra quand même de 4 à 5 heures pour sauvegarder un disque d’un TO (disque à disque)

14 D’autres tendances favorables de l’industrie…
Disques amovibles La capacité de stockage des CD et des DVD réinscriptibles augmentera à travers les technologies Blu-Ray (50 GO) ou HD-DVD (30 GO) ; ces technologies seront largement disponibles en 2006 Il sera possible d’aller jusqu’à 1 TO par disque en 2012, à travers des techniques telles que le stockage holographique ou les MODS (multiplexed optical disk storage) Il faudra trouver cependant un moyen d’accélérer les taux de transfert vers ces disques

15 D’autres tendances favorables de l’industrie…
Mémoire flash La mémoire flash doublera en densité chaque année pendant les années à venir Le coût de ces mémoire qui approchera les 10$ par GO en 2008 (ou avant) restera cependant infiniment plus cher que son équivalent en disque dur

16 Quelques points d’inflexion…
La densité des transistors augmente mais l’écart avec le temps d’accès à la mémoire se creuse : La densité des transistors sur un CPU augmente d’environ 60 % par an (loi de Moore) Les vitesses d’accès à la mémoire augmentent seulement de 3 % par an Cela représente aujourd’hui plus de cycles d’horloge pour accéder la mémoire centrale depuis un Pentium IV de 2004 que cela ne prenait à un en 1988 pour aller récupérer des données depuis un disque dur (lent)

17 Quelques points d’inflexion…
Temps d’accès CPU/mémoire Source : Dean Klein, Micron Corporation

18 Quelques points d’inflexion…
Intel a atteint la « barrière thermique » et a annoncé que tous les prochains CPU auraient au moins deux CPU ou plus par composant Dans le futur, une diminution du temps de cycle sera difficile La densité des transistors continuera cependant d’augmenter mais avec plus de CPU par composant plutôt que sous la forme de processeurs uniques plus rapides Les nouveaux processeurs n’exhiberons PAS d’augmentation des GHz ou de bien meilleurs nombres de cycle par instruction (CPI) comme dans les années passées ; au lieu de cela, on utilisera la loi de Moore pour augmenter le niveau de parallélisme On parle ici de CPU multi-cœurs et multithreads (Intel les appelle hyper-threads ; en fait prolongation de la notion de SMT – Simutaneous Multithread)

19 Quelques points d’inflexion…
Cette tendance aura d’énormes conséquences sur l’industrie du logiciel : Un code séquentiel qui s’exécute à une vitesse donnée « x » tournera toujours à la vitesse « x » 18 mois plus tard sur la prochaine génération de CPU Un code bien conçu capable de s’exécuter en mode parallèle en utilisant les modèles de threading actuels reste très coûteux à écrire, à déboguer et à maintenir au cours du temps L’effet de la loi de Moore (effet de second ordre sur la vitesse du logiciel) peut désormais être considéré comme marginal pour tous les codes séquentiels existants Nous allons devoir être capables de créer du code parallèle (concurrent code) si l’on veut rejoindre la courbe performance/coût du hardware

20 Quelques points d’inflexion…
Continuation de la prolifération des périphériques embarqués Les périphériques embarqués de tous types auront des processeurs capables d’exécuter des applications « riches » pour une très faible consommation de courant Par exemple, les téléphones portables en 2007 seront équivalents, en capacité de traitement, à un portable typique d’aujourd’hui, avec un processeur ARM 7 multi-cœur à 1,6 GHz (ou équivalent)

21 Quelques points d’inflexion…
Reconfigurable Computing Un certain nombre de nouvelles méthodologies de conception émergentes permettant la mise en œuvre de hardware reconfigurable à la volée bénéficieront essentiellement à l’embarqué Les solutions de Tensilica et Stretch de type SOC (System On a Chip) permettront d’instancier des fonctions hardware nouvelles instantanément dans le hardware (DCT, conversion d’espace de couleurs), en temps réel On peut donc imaginer ce type de hardware capable d’instancier « JIT » de nouvelles capacités en temps réel en fonction de la charge : DSP, ou d’autres types de coprocesseurs

22 Quelques points d’inflexion…
GPU Les GPU deviennent des entités de calcul et de traitement extrêmement conséquentes – on peut même imaginer que certains traitement vectoriels puissent utiliser l’énorme quantité de transistors des GPU, leur architecture naturellement parallèle et leur grande bande passante mémoire En raison de l’apparition d’environnements graphiques PCI Express, cela sera la première fois qu’il puisse être envisagé de placer un package GPU en dehors d’un PC (on peut imaginer d’augmenter les capacités limitées de traitement graphique d’un portable par une extension située dans la station d’accueil) Une éventualité plus spéculative pourrait être de faire migrer le GPU dans l’écran Vers 2010, on pourra imaginer de distribuer les processeurs graphiques afin de gérer les besoins haute résolution des moyens d’affichage composites

23 Quelques points d’inflexion…
Généralisation de la mise en place de machines virtuelles Intel (Vanderpool), AMD (Pacifica) vont introduire une assistance matérielle à la virtualisation dans très peu de temps Microsoft a annoncé lors de WinHEC sa volonté de mettre sur le marché un hyperviseur (bénéficiant également des capacités d’isolation de la mémoire dont NGSCB dotera potentiellement les nouveaux modèles de PC)

24 Quelques points d’inflexion…
UFD (USB Flash Devices) Les UFD vont devenir omniprésents, approchant les 100 millions d’unité livrées en 2006 En 2010, les UFD pourront détenir jusqu’à 16 GO Les UFD commencent à ce différencier pour attaquer plusieurs segments fonctionnels ; exemples : UFD transportant des profils personnels, paramétrages réseau, « lettres de créance » réseau UFD contenant des applications UFD transportant et « cachant » des données et des applications d’entreprise (chiffrées), synchronisées lors de la connexion à l’Internet Music players (tel que l’Ipod mini-shuffle d’Apple).

25 Quelques points d’inflexion…
Périphériques portables Les périphériques portables (tels que les téléphones portables) auront plusieurs mémoires flash qui pourront transporter chacun 2 GO (chip de 16 Gb) en 2008 ; en utilisant plusieurs de ces flashes, 4 à 8 GO par téléphone devient imaginable Les périphériques portables (tels que les téléphones portables) auront potentiellement des disques durs (1” ou 0,8”) capables de supporter 8 GO à la fin 2005 et potentiellement 32 GO en 2008

26 Quelques points d’inflexion…
Mémoire non volatile De nouvelles technologies de NVM entreront probablement sur le marché entre 2006 et 2010, tout d’abord pour répondre aux besoins des téléphones portables et d’autres périphériques portables

27 Quelques points d’inflexion…
UWB (Ultra-Wide Band) Permet la création de PC réellement sans fil (y compris pour les accès disques) ; Intel et d’autres « poussent » les protocoles USB sans fil (au-dessus d’USB) pour en accélérer l’adoption Les chipsets UWB seront disponibles en 2006 (les versions beta sont disponibles aujourd’hui) ; leur vitesse d’adoption dépendra de la stabilisation du standard UWB DS-UWB (Direct Sequence) poussé par Motorola MBOA (Multi Band OFDM) poussé par Intel

28 Quelques points d’inflexion…
RFID, NFD et Senseurs Nouvelles « races » d’application sans fil et d’interaction homme – machine en cours d’émergence dans un contexte de proximité immédiate (< 30 cm), grâce à l’apparition de technologies de type NFC (Near Field Communications), incluant des transactions périphérique à périphérique, l’authentification, l’appairage des périphériques,… De très petits Smart Dust sensor chips qui contiennent un processeur, de la mémoire et une radio sans fil ainsi qu’un senseur vont arriver sur le marché très rapidement (Dust Networks (http://www.dust-inc.com) pour des prx très attractifs (moins de 2$) avec une batterie utilsable pendant 10 ans Ce type de technologie peut parfaitement s’intégrer dans un réseau P2P avec de réelles capacités d’auto-configuration, autoréparation, sans besoin de serveurs centraux (DNS, sécurité) Ce type de technologie ouvre la perspective de la notion « d’intelligence ambiante »

29 Le PC des années 2010… En 2010, on peut imaginer qu’un PC soit constitué de : Un processeur à 8 ou 16 cœurs Stockage Un disque dur hybride de 3 TO avec une composante rotative classique et 1-2 GO de cache en mémoire flash Un périphérique USB chiffré et amovible contenant le paramétrage de l’environnement de l’utilisateur et les applications de l’entreprise Connectivité Une interface Ethernet filaire de 20 GO/s Une interface sans fil de type MIMO de 100 Mb/s Une connexion WAN de 1 Mb/s UWB pour les périphériques Interface homme – machine Navigation par souris ou voix Entrée de données par clavier Ecran OLED 30 pouces Batterie de 8 heures MIMO = Multiple-input, Multiple-output n Une technique pour améliorer la bande passante et la porte du sans fil en tirant parti du multiplexage. Les algorithmes MIMO dans un chip radio permettent d’émettre de l’information à travers deux antennes ou plus. Ceci permet (sans rentrer ici dans les détails) d’utiliser plusieurs chemins pour transmettre l’information qui est ensuite recombinée sur le récepteur en utilisant les algorithmes MIMO. OLED : Organic Light Emitting Diode : plus plats, plus souples, sans rétro-éclairage donc plus légers, moins fragiles, moins consommateurs en énergie, avec un meilleur contraste, un meilleur temps de réponse, et un angle de vue de 160°

30 Le téléphone portable des années 2010…
Un processeur ARM doté de 4 cœurs ou plus Stockage Un micro disque dur de 32 GO ou de 8 GO en flash Un périphérique USB chiffré et amovible contenant le paramétrage de l’environnement de l’utilisateur et les applications de l’entreprise Connectivité Une interface sans fil de type MIMO de 100 Mb/s Une connectivité WAN de 1 Mo/s Une interface UWB pour la connexion d’autre périphériques et d’écrans de grande taille Interface homme – machine Navigation par clavier, voix et joystick Entrées de données par clavier, voix et potentiellement de nouvelles interfaces homme – machine telle que X-nav Ecran OLED portable 2-3 pouces Projection de l’affichage pour des images 32 pouces en utilisant des LED blanches X-Nav : focalisation sur l’utilisation d’un téléphone mobile qui bouge (télé-navigation, GPS, location-based service,…)

31 Le téléphone portable des années 2010…
Une batterie qui dure typiquement de 3 à 5 jours Autres fonctionnalités Player MP3 Géo-localisation Caméra de 10+ millions de pixels avec une bonne optique Camara vidéo avec des capacités d’enregistrement haute définition directement sur disque Télévision (via DVB-H) – 8 heures de visualisation Taille ~ 100 cc

32 Quelques tendances moins favorables de l’industrie…
On a déjà vu la problématique de la « barrière thermique » et de ses conséquences fondamentales sur le monde du logiciel Mais ce n’est pas tout…

33 Quelques tendances moins favorables de l’industrie…
La complexité du développement et du test du logiciel est en augmentation constante : Les conceptions de logiciels de grande taille (Windows est un bon exemple) font face à la « barrière de la complexité », conceptions qui se complexifient encore en raison de l’augmentation de la taille de la matrice de tests (compatibilité ascendante) Il n’y a pas d’équivalent à la loi de Moore pour les développements logiciels Les nouvelles possibilités du logiciel ne doublent pas tous les 18 mois… Ceci est un problème partagé par toute l’industrie (même si peu s’en rendent compte pour l’instant) qui est encore exacerbé par les tendances à la décentralisation et à la connectivité permanente : Envisager des tests d’exécution exhaustifs dans un système distribué devient impraticable car tous les composants ne peuvent : Jamais être dans un bon état connu en même temps Jamais être entièrement sous votre contrôle administratif local On ne peut tester tout l’Internet à la fois On ne peut rebooter l’Internet

34 Quelques tendances moins favorables de l’industrie…
Il y a plus de capacité de calcul à la « périphérie » qu’au « centre » : Le centre est effectivement en ralentissement par rapport à la périphérie Il y a plus de capacité de stockage à la périphérie qu’au centre La gestion du temps de latence devient le point focal de la conception à tous les niveaux : Entre le CPU et la mémoire centrale Entre les PC clients et les datacenters La décentralisation des périphériques continue d’être une tendance lourde La tendance à la généralisation du sans-fil entraîne une plus grande mobilité de tous les périphériques Davantage de topologies dynamiques ; plus grands besoins en sécurité La complexité du logiciel est en augmentation rapide dans 2 dimensions : la quantité de code interconnecté et le besoin de plus en plus pressant pour du code plus parallèle Il continue d’y avoir abondance de transistors et un déficit d’idées sur la façon de mieux tirer parti du hardware On ne peut construire et tester du logiciel en utilisant des méthodologies traditionnelles suffisamment rapidement pour utiliser toute cette puissance de traitement

35 Conclusions provisoires
L’informatique doit faire face à un certain nombre de problèmes fondamentaux… La Complexité La Sécurité Le parallélisme Les interactions homme-machine Les interactions machine à machine

36 Et si l’on devait réfléchir à la conception d’un nouveau système d’exploitation…
Dans les années 70, Xerox au PARC a développé le premier « PC » en se posant la question suivante : « Que se passerait-il si la puissance informatique était gratuite ? » Il faut se poser une question assez semblable : « Que se passerait-il si les transistors étaient gratuits et la bande passante illimitée ? » Comment une telle hypothèse permettrait-elle de repenser la notion d’ordinateur ? Que pourrait-on faire avec des milliards de transistors partout en dehors d’augmenter la taille des caches de niveau 2 sur de coûteux composants CPU ? Que pourrait-on faire si l’on avait processeurs sur un seul chip avec un TO de mémoire locale ? Les programmes séquentiels actuels ne peuvent raisonnablement pas tirer parti d’un tel futur (tout à fait envisageable…)

37 Et si l’on devait réfléchir à la conception d’un nouveau système d’exploitation…
Si le calcul était gratuit et que la bande passante était illimitée, les modèles de programmation et les systèmes d’exploitation seraient bien mal équipés pour une telle réalité Le parallélisme et la complexité présentent un challenge majeur pour les développeurs de logiciel à tous les niveaux Puisque la bande passante vient de l’imagination des ingénieurs mais que le temps de latence est la conséquence des lois de base de la physique, l’écart en terme de temps de latence n’a aucune chance de changer Tout développeur de logiciel devient un développeur de systèmes distribués en raison des tendances hardware évoquées précédemment Y a-t-il un modèle de programmation qui permet d’adresser ces problèmes ? Nous pensons que la réponse est oui Utilisation de variantes du π-calcul (algèbres des processus mobiles) Systèmes de type et contrôle de modèle pour administrer la preuve de justesse lors de la compilation pour créer des services composés

38 Π-calcul Le π-calcul est le modèle de référence pour le calcul distribué introduit par Robin Miller Ce modèle est fondé sur l’émission de messages sur des canaux nommés et fait le pendant du λ-calcul (qui permet de formaliser le calcul séquentiel) Ce modèle abstrait général concentre toutes les caractéristiques des systèmes de processus mobiles dans un formalisme simple Le π-calcul est, par exemple, à la base de la sémantique du langage Erlang La sémantique classique du π-calcul est fondée sur la réécriture de termes où la communication consiste en une substitution de noms tout comme en λ-calcul Le renommage implicite des noms de canaux par alpha-conversion et l'équivalence structurelle destinée à rapprocher les termes communicants rendent impossible l'identification précise des processus et des canaux créés lors de l'évolution du système Le π-calcul typé est le noyau de langages expérimentaux parallèles ou distribués comme Pict, Join et Facile Le système Coq est un système basé sur une théorie des types, dans lequel il est relativement aisé de faire des preuves par induction Utilisation Coq par Georges Gonthier, chercheur au MSRC, en collaboration avec Benjamin Werner, chercheur à l’INRIA, pour la démonstration du théorème des quatre couleurs

39 Π-calcul – Quelques références
 An Introduction to the Pi-Calculus  by Joachim Parrow.    pp. 3-14, 25-28, In Handbook of Process Algebra, ed. Bergstra, Ponse, Smolka, pages , Elsevier 2001. URL:  A Foundation for Actor Computation by Agha, Mason, Smith, Talcott.  pp In Journal of Functional Programming, 1996. URL:  Mobile Ambients by Cardelli and Gordon. In Theoretical Computer Science, special issue on Coordination, D. Le Métayer Editor. Vol 240/1, July 2000, pages , Elsevier. URL:  Join Calculus by Fournet and Gonthier. "The reflexive chemical abstract machine and the join-calculus". In Proceedings Principles Of Programming Languages 1996. URL:  A Calculus of Mobile Processes (Part I) by Milner, Parrow and Walker. URL:  The Polyadic Pi-Calculus:  A Tutorial  by Milner.  pp URL:  A Brief Introduction to Applied Pi  by Sewell.  pp 1-15. URL: 

40 Et si l’on devait réfléchir à la conception d’un nouveau système d’exploitation…
Développement simultané d’un nouveau langage de programmation et d’un système d’exploitation pour tenter de faire face aux problèmes de parallélisme et de complexité dont on vient de parler Semblable au processus de co-évolution d’Unix et du langage C La conception de l’un serait utilisé pour influer le développement de l’autre (et vice versa) Les deux pouvant exister séparément ou ensemble

41 Quel langage pour un tel environnement ?
Probablement un langage de programmation conçu pour embrasser les problématiques de parallélisme et d’asynchronisme Fondé sur un ensemble de formalismes mathématiques Algèbres des processus mobiles Systèmes de type et contrôle de modèle Le parallélisme serait implicite, non exprimé Chaque déclaration, par défaut, s’exécute effectivement en parallèle avec d’autres déclarations Le compilateur arrive à trouver la bonne séquence d’exécution plutôt que le développeur Pas de threads ! La seule façon d’interagir avec un processus se ferait via des messages Les messages verraient leur type contrôlé ainsi que les processus afin de pouvoir détecter la plupart des bogues liés au parallélisme ou à l’asynchronisme lors de la compilation Deadlocks, livelocks Race conditions Fuite de ressources ou de secrets entre les services Les services seraient de manière intrinsèques des boîtes noires que l’on assemble, comme le hardware

42 Pour quel système d’exploitation ?
Un système d’exploitation décentralisé qui serait orchestré au travers de différents nœuds distribués et parallèles Fourniratt un modèle de programmation cohérent pour toutes les ressources (services, fichiers, périphériques, streams, utilisateurs) Tous les composants du système seraient construits comme des services Web faiblement couplés Tous les services exhiberaient : Un URI pour les rendre adressables Un contrat qui spécifie un comportement vérifiable lors de l’assemblage Un ensemble cohérent de sémantiques et de schémas pour décrire la façon d’interagir avec le service Présupposerait un monde où : Les ressources sont faiblement couplées et hétérogènes Les services qui ne se font pas confiance mutuellement communiquent sur un réseau non sécurisé et non fiable Il y a plusieurs domaines de confiance avec plusieurs administrateurs La topologie réseau est hautement dynamique La coordination locale des services intervient sans recourir à une autorité centrale

43 ou une réalité potentielle future ?
Est-ce un rêve… ou une réalité potentielle future ?

44 L’industrie à la croisée des chemins…
Les progrès du hardware sont-ils de mauvaises choses ? IT Doesn’t Matter? L’éclatement de la bulle Internet a vu l’apparition d’un certain nombre de questionnement au sein des entreprises : Le fameux « IT doesn’t matter » publié dans la très célèbre revue Harvard Business Review qui tire un bilan très négatif de l’informatique, des investissements qui lui sont consacrés en regard de la valeur ajoutée et de la valeur créée (*) dans l’entreprise La loi de Moore est vécue par certaines entreprises comme une tyrannie car il faut renouveler en permanence les équipements informatiques. L’informatique est présentée par certains comme une « utilité » (au sens anglo-saxon du terme) On est donc en droit de se poser quelques questions sur l’avenir de l’informatique et, en particulier, sur le rôle du progrès. Pour essayer d’aller plus loin dans l’analyse, il est nécessaire de mettre en perspective deux éléments très importants que nous, professionnels de l’informatique, avons parfois tendance à oublier : l’économie et la sociologie. (*) Valeur ajoutée : utilisation de nouvelles compétences, méthodologies et technologies afin d’améliorer les processus internes. Valeur créée : comment une organisation définit ses processus, activités et tâches pour créer et délivrer à ses clients sa proposition de valeur puis répondre aux besoins de ses clients. La fin de l’innovation? L’informatique comme une « utilité » ?

45 Ce qui reste à faire… Pourtant, il reste encore de très nombreux problèmes à résoudre et de très nombreux domaines à défricher… Pour mettre ce qui reste à faire en perspective, je me permets de citer une fois de plus Jim Gray (Microsoft Research) qui a présenté cette liste de 12 projets majeurs pour l’informatique du 21ème siècle lors de sa réception du Turing Award (l’équivalent du Prix Nobel de l’informatique) : A dozen remaining IT problems (ACM Federated Research Computer Conference) Atlanta, 4 Mai 1999. Voir le texte de l’allocution de Jim Gray en

46 Les 12 travaux d’Hercule (d’après Jim Gray, Microsoft Research)
Scalabilité : concevoir une architecture matérielle et logicielle capable d’évoluer linéairement dans un facteur 106 Accomplir un tel objectif a pour conséquence de faire en sorte que la capacité de stockage et de traitement d’une application puisse croître d’un million de fois, par exemple en effectuant les traitements plus rapidement (dans un facteur 106) ou en effectuant des traitements 106 fois plus importants dans le même temps, juste en ajoutant des ressources supplémentaires. La résolution d’un tel problème est loin d’être simple car elle suppose de faire des progrès extrêmement significatifs dans le domaine des bases de données parallèles ou de la parallélisation des traitements. De nombreux progrès ont déjà été effectués dans ce domaine avec l’évolution des performances des benchmarks TPC-C ou l’apparition de clusters de traitement tels que les Beowulf Clusters[1]. Pourtant l’atteinte de tels niveaux de performance ou la gestion de tels clusters restent encore extrêmement complexes, à un point tel que de très nombreux progrès restent à accomplir pour en faire des réalités industrielles. [1]

47 Les 12 travaux d’Hercule (d’après Jim Gray, Microsoft Research)
Réussir le test de Turing Alan Turing, mathématicien, philosophe et crypto-analyste est né en 1912 et mort en Par ses travaux théoriques dans les domaines de la logique et des probabilités, il est considéré, sinon comme le fondateur des ordinateurs, en tout cas comme l'un des pères spirituels de l'intelligence artificielle. Il reçoit le prix Smith pour ses travaux sur les probabilités, publie On Computable Numbers with an application to the Entscheidungsproblem et émet le concept de la Machine de Turing. Ce concept constitue la base de toutes les théories sur les automates et plus généralement celle de la théorie de la calculabilité. Il s'agit en fait de formaliser le principe d'algorithme, représenté par une succession d'instructions – agissant en séquence sur des données d’entrée – susceptible de fournir un résultat. Cette formalisation oblige Turing à développer la notion de calculabilité et à déterminer des classes de problèmes "décidables". Cela le conduit à introduire une nouvelle classe de fonctions (les "fonctions calculables au sens de Turing") dont il démontre qu’elles sont identiques aux fonctions lambda définissables de Stephan Kleene et Alonzo Church. La seconde Guerre Mondiale lui offre bientôt l'opportunité de mettre en pratique ses théories. C'est au département des communications du Ministère des affaires étrangères britannique qu'il se retrouve confronté au secret d'Enigma, nom de code de la machine utilisée par la marine allemande pour communiquer avec leurs sous-marins. Le cryptage utilisé par les Nazis échappait toujours aux modes d'investigation classiques. Mais avec la collaboration de W. G. Welchman, Turing réussit à percer le code en appliquant sa nouvelle méthode et, de façon indirecte, contribue ainsi à la victoire de la bataille de l'Atlantique. Extrait de

48 Les 12 travaux d’Hercule (d’après Jim Gray, Microsoft Research)
En 1950, Alan Turing publie son fameux papier « Computing Machinery and Intelligence » Une idée très en avance sur son temps : les ordinateurs sont-ils des outils ou sont-ils des entités conscientes, disposant d’une identité, d’une volonté et d’un libre arbitre ? Pour évaluer l’intelligence d’un ordinateur, Turing propose un test… La guerre achevée, Turing intègre le National Physical Laboratory où il entreprend, en concurrence avec les projets américains, de créer le premier ordinateur. Les avancées technologiques lui laissent entrevoir la réalisation de cet objectif dans un avenir proche. Mais en raison de son homosexualité, il est bientôt écarté des grands projets gouvernementaux anglais. En 1948, grâce à Newman, il obtient un poste de chargé de cours en mathématiques à l'Université de Manchester qu'il occupera jusqu'à la fin de sa vie. Deux ans plus tard, il participe avec Frederic Williams et Tom Kilburn à la réalisation d’un calculateur électronique, le Mark I, et conçoit à cette occasion un manuel de programmation. Dans la foulée, il publie Can a machine think ? dans lequel il fait la synthèse des bases mathématiques et conceptuelles de l’ordinateur électronique programmable et résume sa philosophie de la "machine intelligente". Il énonce également le célèbre Test de Turing ; ce test se résume à une expérience dans laquelle un homme tient une conversation avec une machine. Comment dans ce cas, un observateur, par l'unique analyse des messages échangés, pourra-t-il distinguer l'homme de la machine ? Turing était convaincu que tout n'était qu'un problème d'information et que le développement des technologies permettrait d'ici cinquante ans aux machines de tenir en échec l'être humain au moins cinq minutes. Extrait de

49 Les 12 travaux d’Hercule (d’après Jim Gray, Microsoft Research)
Fondé sur un jeu d’imitation, joué par 3 personnes : un homme et une femme dans la même pièce, un interrogateur dans une autre L’interrogateur doit discerner un homme imitant une femme à travers une conversation menée via des téléscripteurs Le test de Turing : remplacer l’homme par une machine Celle-ci doit imiter l’homme imitant la femme (généralisation de l’intelligence et introduction de l’émotivité) A l’origine de l’Intelligence Artificielle : connaissance, raisonnement, compréhension du langage naturel, apprentissage,… Que prouverait la réussite du test de Turing ? Malgré l’évidente difficulté du problème et notre échec relatif, certains philosophes, dont John Searle, pensent que même si nous réalisons un programme passant le test de Turing, cela ne prouvera pas que nous avons mis de l’intelligence dans notre ordinateur. Le raisonnement de J. Searle est le suivant : les programmes informatiques sont syntaxiques (il sont formels, ce sont des outils à manipuler des symboles) ; les pensées humaines ont un contenu sémantique (un sens est attaché aux mots que nous utilisons, sens que l’on ne peut ramener à de la syntaxe formelle. Ce sens provient de propriétés biologiques qu’un programme, de par sa nature, ne peut pas posséder) ; donc les programmes ne penseront jamais et ne seront jamais intelligents. Cette façon de voir décourage tout tentative concrète. Pour J. Searle, la réussite au test de Turing n’est pas une condition suffisante pour qu’on puisse qualifier les ordinateurs d’intelligents. Nous n’entrerons pas ici dans les controverses qu’engendre ce type d’analyses. L’article original[1] où, en 1980, J. Searle exposait son point de vue, était accompagné de 26 commentaires critiques, et depuis, une multitude de discussions se sont déroulées. Remarquons cependant qu’il paraît un peu étrange d’affirmer qu’un système que rien ne distinguerait dans un dialogue d’un être humain, ne possède pas – l’intelligence – qu’on attribue aux humains. Il y aurait comme un privilège accordé par décret, à une catégorie particulière d’êtres – les humains – qu’on refuserait définitivement à une autre catégorie d’êtres, les ordinateurs. J. Searle manque de fair-play : si un jour les ordinateurs réussissaient à nous imiter, alors nous devrons avoir l’élégance de les qualifier d’intelligents. Cette critique de la position de J. Searle est qualifiée de behavioriste : on propose de fonder un jugement uniquement sur les comportements sans entrer dans l’analyse des processus internes (dans le cerveau et dans l’ordinateur) qui produisent les comportements. Cependant, comme le font remarquer A. Saygin, I. Cicekli et V. Akman[2], cette accusation de behaviorisme méritera d’être prise eu sérieux le jour où, nous humains, disposerons d’autres moyens que l’analyse du comportement pour évaluer l’intelligence des êtres humains ! [1] J.R. Searle. Minds, Brains and Programs, in Behav. And Brain Sc., 3, pp , 1980. [2] A. P. Saygin, The Turing Test Page :

50 Les 12 travaux d’Hercule (d’après Jim Gray, Microsoft Research)
Implicites dans le test de Turing, l’informatique se voit présenter trois défis supplémentaires et au moins aussi difficiles que le test de Turing Lire et comprendre aussi bien qu’un être humain Penser et écrire aussi bien qu’un être humain Voir aussi bien qu’un être humain Ces questions sont au cœur des réflexions sur l’interaction entre l’homme et la machine Les prévisions de Turing en matière de technologie sont étonnamment précises et même un peu pessimistes : Turing estimait que la mémoire humaine disposait d’environ entre 1012 et 1015 octets ; or les supercalculateurs disposent aujourd’hui de ces possibilités. Par contre, en termes d’intelligence des machines, force est de reconnaître qu’il avait été par trop optimiste… On ne rentrera pas ici dans le débat suivant : A-t-on fait tout ce qui était en notre pouvoir depuis 50 ans pour permettre à un ordinateur de passer le test de Turing ? Sera-t-on capable un jour de voir un ordinateur passer le test de Turing ? Est-ce nécessaire ? Qu’en est-il de l’intelligence artificielle ? Les objections classiques à l’IA : Objection logique Elle repose sur le célèbre théorème que Kurt Gödel a énoncé en 1931. Celui-ci fait ressortir le caractère d’incomplétude de tout système formel (tout système formel comporte des éléments dotés de sens et de définitions très précis, mais dont on ne peut démontrer la vérité ou la fausseté : ils sont incomplets). Il serait alors vain de décrire l’esprit en le ramenant à de tels systèmes. Cependant, pour certains, rien n’indique que le système cognitif ne soit pas à considérer comme formel, car si l’on considère à la suite du philosophe autrichien Ludwig Wittgenstein qu’un être vivant est un système logique au même titre qu’une machine, on peut concevoir que l’esprit est « formel », qu’il connaît des limites, comme toute machine. Objection épistémologique Un certain nombre de biologistes et d’informaticiens jugent l’IA classique prématurément ambitieuse. Pour eux, il faut d’abord parvenir à modéliser le fonctionnement de niveaux d’intégration du vivant plus simples (comportement d’animaux «simples», collecte d’informations par le système immunitaire ou encore communications intercellulaires) avant de s’attaquer à l’esprit humain. Objection philosophique Pour John R. Searle, le système cognitif de l’homme est fondamentalement donneur de sens. Or la machine ne possède pas d’intentionnalité; elle n’a pas de conscience. Un ordinateur peut manipuler des symboles mais ne peut les comprendre. Ainsi, l’IA travaillerait sur la syntaxe des processus de raisonnement (les règles combinatoires), pas sur leur sémantique (l’interprétation et la signification).

51 Les 12 travaux d’Hercule (d’après Jim Gray, Microsoft Research)
Speech to Text : entendre comme une personne dans sa langue maternelle Text to Speech : parler comme une personne dans sa langue maternelle Voir aussi bien qu’une personne : reconnaître les objets et les mouvements

52 Les 12 travaux d’Hercule (d’après Jim Gray, Microsoft Research)
Ces trois « travaux d’Hercule » relèvent, de manière explicite, de ce que l’on classe généralement sous le terme générique d’interface homme-machine. Il y a certainement eu de très gros progrès dans ce domaine, avec des calculateurs devenant capables d’entendre et d’identifier le langage, la musique et les sons. Aujourd’hui, les systèmes de type speech to text sont largement utilisables même s’il reste des progrès à accomplir dans les domaines de l’approfondissement du langage et des réseaux sémantiques. Ainsi, la capacité pour un ordinateur de reconnaître la sémantique d’une phrase comme « les poules du couvent couvent » reste d’une grande difficulté. Pourtant les progrès dans ce domaine sont étonnants avec un taux d’erreur qui baisse d’environ 10 % par an. Aujourd’hui on arrive, avec un orateur entraîné et un bon microphone, à reconnaître environ 95 % des mots. Par contre, la capacité de traduction des textes qui avait tant fait rêver dans les années 1950 semble aujourd’hui passée de mode, chacun de résignant plus ou moins plus implicitement à utiliser l’anglais international comme une nouvelle lingua franca. Pourtant, la perspective de disposer de centraux téléphoniques capables de traduire en temps réel chacune des conversations dans la langue de l’auditeur continue d’être un extraordinaire challenge qui permettrait, dans une certaine mesure, d’abaisser les barrières entre les peuples. Le dernier domaine de la reconnaissance visuelle a également fait de nombreux progrès mais les ordinateurs sont encore loin de percevoir aussi bien que les êtres humains.

53 Les 12 travaux d’Hercule (d’après Jim Gray, Microsoft Research)
Memex personnel : enregistrer tout ce qu’une personne voit et entend pendant sa vie et retrouver tout élément sur demande. Exemple d’un tel Memex personnel : le projet MyLifeBits de Gordon Bell (MSR) qui vise à numériser toute sa vie. Le logiciel : Est fondé sur SQL Server Met en place des outils permettant de capturer des pages Web, des chats, du contenu TV, radio et téléphone Permet de créer des rapports, de créer des hyperliens Autorise la recherche en full text en fonction du temps ou de n’importe quel autre attribut

54 Les 12 travaux d’Hercule (d’après Jim Gray, Microsoft Research)
En 1945 Vannevar Bush a publié un article[1] fameux et visionnaire dans lequel il décrivait un bureau capable de stocker un « milliard de livres », des journaux et de la littérature, tous reliés entre eux par des hyperliens. Il a également proposé des lunettes équipées d’une caméra intégrée et capables de photographier à la demande ainsi qu’un dictaphone capable d’enregistrer dans le même temps ; toutes ces informations alimentant ensuite le Memex. Ce Memex permettait, bien évidemment, d’y rechercher l’ensemble des documents qui s’y trouvaient. Plus de 50 années plus tard, ce Memex est pratiquement disponible (au moins dans son concept). Ainsi, la plus grande partie de la littérature scientifique est disponible en ligne sur Internet. Il en est de même pour la littérature et de la musique avec, toutefois, différents problèmes sur lesquels nous ne débattrons pas ici et relatifs à la protection de la propriété intellectuelle et du copyright. Réaliser un Memex personnel est possible aujourd’hui pour tout ce qui ne comprend pas de vidéo. Enregistrer l’ensemble de sa vie en vidéo nécessiterait, selon Jim Gray, 8 peta-octets, ce qui est encore au-delà des possibilités technologiques actuelles pour des coûts acceptables. Il est bien évident que la réalisation d’un tel Memex poserait de nombreux problèmes d’éthique que nous ne prendrons pas le temps d’aborder pas ici ; il ne fait pas l’ombre d’un doute que ces problèmes devront, un jour ou l’autre, trouver une solution. [1]V. Bush, As We May Think, Atlantic Monthly,

55 Les 12 travaux d’Hercule (d’après Jim Gray, Microsoft Research)
Dans les années 1940, Vannevar Bush a envisagé l’apparition d’une machine capable de stocker toute la connaissance humaine et a imaginé l’hypertexte Vannevar Bush était conseiller scientifique de Roosevelt durant la deuxième guerre mondiale. Il est considéré comme l'ancêtre de l'hypertexte. Dans un article intitulé « As we think » paru en 1945 dans l'Atlantic Monthly il décrit un dispositif hypermedia avant la lettre qu'il appelle Memex (« memory extender ») et qui devrait permettre aux chercheurs d'accéder plus facilement à une documentation scientifique devenue proliférante. Il s'agit d'un « dispositif dans lequel un individu stocke ses livres, ses archives et ses communications, et qui est mécanisé pour être consulté d'une façon rapide et souple. » Le support de stockage imaginé par Bush était le microfilm. Un bureau spécialement équipé permettait de sélectionner et de projeter instantanément les documents désirés. Mis à part le support, l'invention de Bush, qui ne fut jamais réalisée, présentait toutes les fonctionnalités d'un hypertexte moderne : possibilité de projeter plusieurs documents simultanément pour les comparer; possibilité de scanner de nouveaux documents ou de se les procurer sous forme de microfilms; possibilité d'ajouter ses propres notes et commentaires; possibilité de lier entre eux les documents. Extrait de « A memex is a device in which an individual stores all his books, records, and communications, and which is mechanized so that it may be consulted with exceeding speed and flexibility. It is enlarged intimate supplement to his memory »

56 Les 12 travaux d’Hercule (d’après Jim Gray, MS Research)
Memex mondial : construire un système qui, étant donné un texte, peut répondre à des questions et résumer ce texte aussi précisément qu’un expert du domaine Cette réalisation est dans le prolongement de celle qui a été évoquée précédemment. Un livre représente, en général moins d’un mégaoctet ; l’ensemble de la littérature aujourd’hui publiée, moins d’un peta-octets. De même, il y a environ films dont la plupart d’entre eux sont très courts ; les enregistrer en qualité DVD représenterait quelques peta-octets supplémentaires. Memex : dans les années 40, Vannevar Bush envisage l’apparition d’une machine capable de stocker toute la connaissance humaine.

57 Les 12 travaux d’Hercule (d’après Jim Gray, MS Research)
De même scanner avec une haute qualité l’ensemble des documents stockés dans les grandes bibliothèques du monde entier représenterait probablement aux alentours d’un exa-octets supplémentaire. Or, l’industrie du stockage magnétique vient de dépasser la barrière un peu mythique de la livraison d’un exa-octets de stockage sur disque et de 100 exa-octets de stockage sur bande pendant l’année Avec la décroissance du prix du stockage de masse (on peut raisonnablement penser que le stockage magnétique sera des centaines de fois moins cher dans 10 ans), on pourra très probablement stocker la totalité du savoir enregistré et enregistrable de l’humanité à des coûts parfaitement abordables sur le plan économique. La principale difficulté, si l’on met en ligne une telle quantité d’informations, sera de rechercher ces informations de manière efficace (peut-être que l’avènement du Web sémantique sur lequel travaille aujourd’hui le W3C nous aidera-t-il dans ce sens) et d’être capable d’en faire une synthèse. Ces sujets mériteront très certainement des recherches approfondies.

58 Les 12 travaux d’Hercule (d’après Jim Gray, MS Research)
Télé-présence : télé-observateur et télé-présent L’objectif est, ici, de permettre tout à la fois d’être rétrospectivement à un autre endroit comme observateur (télé-observateur), d’écouter, de sentir et de voir comme si l’on était effectivement présent mais aussi d’être participant et de simuler le fait d’être vraiment présent (télé-présent) en interagissant avec les autres et l’environnement comme si l’on était vraiment présent. Les technologies de réalité virtuelle ont fait des progrès très significatifs ces dernières années mais nous sommes encore loin d’être capables de réaliser de telles simulations à la demande permettant d’observer et de participer à un évènement.

59 Les 12 travaux d’Hercule (d’après Jim Gray, MS Research)
Système « sans problème » : construire un système utilisé par des millions de personnes chaque jour et administré par une seule personne à mi-temps. L’objectif ici est de réaliser des systèmes informatiques capables de s’administrer automatiquement. Le gestionnaire système humain définit des objectifs, des règles de gestion et un budget et le système fait le reste. Quand arrive un nouveau matériel ou un nouveau logiciel, celui-ci est capable d’être ajouté automatiquement et sans intervention à l’environnement déjà existant ; quand un serveur a un problème, son stockage a été répliqué quelque part ailleurs et les opérations sont capables de reprendre depuis cet emplacement sans interruption ; quand un élément matériel a un problème, le système doit être capable de diagnostiquer automatiquement ce problème et de commander la pièce défaillante,…

60 Les 12 travaux d’Hercule (d’après Jim Gray, MS Research)
Système sécurisé : construire un système sur lequel les dénis de service ne sont pas possible et sur lequel on ne peut pas voler d’information (en le prouvant) Construire des systèmes hautement sécurisés est l’un de nos plus grands défis à l’heure actuelle. InformationWeek a estimé qu’en 2001, les brèches de sécurité ont coûté 1,4 milliard de $ dans le monde, 2/3 des sociétés ont subi virus, vers, ou chevaux de Troie et 15 % ont subi des attaques en déni de service. L’utilisation du Web comme support de commerce électronique en qui les utilisateurs ont le même niveau de confiance qu’en leur banquier, leur boucher et leur épicier est à ce prix. Or, force est de constater qu’il y a encore de très grands progrès à réaliser dans ce domaine. De même, aujourd’hui, la seule façon d’envisager la protection contre les dénis de service (ou d’ailleurs la majorité des problèmes de sécurité) consiste, tout à la fois, à se défendre et aussi à faire réaliser par des équipes externes ou internes à sa société des tests d’intrusion ou des tests en déni de service sur son environnement opérationnel. Mais nous ne sommes jamais certains que ces tests ont été suffisamment exhaustifs. Il reste donc à savoir prouver qu’un système est sûr.

61 Les 12 travaux d’Hercule (d’après Jim Gray, MS Research)
Système toujours disponible : le système est indisponible pendant moins d’une seconde par siècle. Un tel objectif semble aujourd’hui bien difficile à accomplir. Pourtant, nous sommes passés d’une disponibilité d’environ 90 % dans les années 1950 à 99,99 % pour les systèmes correctement gérés. La plupart des utilisateurs du Web font l’expérience d’une disponibilité d’environ 99 % en raison de la nature fragile du Web et de ses protocoles et d’une emphase peut-être un peu trop grande mise sur la vitesse de mise sur le marché des sites et de leurs services au détriment de la qualité de leur conception. On a donc ajouté trois « 9 » de disponibilité en 50 années. Si l’on veut essayer de viser un système capable d’être aussi disponible que l’actuel mécanisme de distribution de l’eau, du gaz et de l’électricité, il faut pourtant viser bien au-delà. Cela peut sembler un peu irréaliste ; pourtant, avec la baisse constante du prix du hardware et l’augmentation constante de la bande passante des réseaux, il est possible d’imaginer de répliquer les services à de nombreux endroits tout en utilisant la notion de transaction pour gérer la cohérence des données. On peut ici utiliser la diversité des conceptions en mode redondant afin d’éviter la plupart des causes classiques de défaillance. Mais de telles conceptions n’ont malheureusement pas le loisir d’être testées en vraie grandeur : il faut réaliser une analyse détaillée et être capable d’établir la preuve que ce que l’on a conçu répond effectivement au besoin.

62 Les 12 travaux d’Hercule (d’après Jim Gray, MS Research)
Programmeur automatique : Concevoir un langage ou une IHM qui permette un rendement de programmation multiplié par 1000, tout en permettant une description complète de toutes les applications. Le logiciel est coûteux à écrire et c’est la seule chose dans le cyberespace qui devient de plus en plus cher et de moins en moins fiable. Ceci n’est pas tellement lié au fait que les composants individuels du logiciel deviennent moins fiables mais simplement au fait que les logiciels deviennent de plus en plus gros alors que l’on admet qu’un programme classique qui a été testé et re-testé garde toujours environ un bogue par millier de lignes ; en valeur absolue, le nombre de bogues contenu dans un programme dont la taille ne fait que grossir ne peut donc que croître. En même temps, écrire un programme coûte cher : concevoir, coder et documenter un programme coûte environ 20 $ par ligne auquel il faut ajouter environ 150 % du coût pour tester le code ainsi créé. Et, une fois ce code livré à un client, il faut encore dépenser à peu près la même chose pour supporter ce code et le maintenir pendant sa durée de vie.

63 Les 12 travaux d’Hercule (d’après Jim Gray, MS Research)
Et ce phénomène devient de plus en plus grave avec la diminution permanente du coût du hardware et l’augmentation permanente de la taille et donc du coût du logiciel. Jusqu’à présent, une tentative de solution a été abordée en essayant de réutiliser au maximum le logiciel (approche de la programmation orientée objet, utilisation massive des progiciels,…) mais nous en sommes encore loin du compte. La programmation automatique a été, depuis 50 ans, le graal des langages de programmation et des systèmes. Malheureusement, les progrès ont été plutôt de l’ordre d’une augmentation de la productivité de la programmation par un facteur 10 au lieu des 1000 qui seraient nécessaires ici. Nous en sommes donc encore à la recherche d’un langage de spécification de haut niveau (1) qui soit des milliers de fois plus simple et plus puissant que les langages actuels, (2) que les ordinateurs soient capables de compiler dans un temps acceptable (3) qui soit suffisamment puissant pour décrire complètement toutes les applications nécessaires. Malheureusement, nous en sommes encore loin.

64 Quelques enjeux du 21ème sciècle S’affranchir des barrières
La barrière de la « réalité » Graphique, vision, traitement du signal Barrières entre les hommes Collaboration et outils de communication Barrières entre les hommes et les ordinateurs Interface, langage, parole, vision Barrières entre les hommes et l’information Bases de données, data mining, scalable computing Barrières entre les ordinateurs Réseaux hauts débits Barrières entre le travail, la maison, la voiture,… Systèmes adaptatifs, sans-fil Nous nous devons de rendre l’informatique plus proche de l’homme. Car, « alors que les mesures incitatives se multiplient, tant au niveau français qu’au niveau européen, pour que nous entrions de plein pied dans la société de l’information et que des budgets importants sont prévus pour permettre le déploiement de l’infrastructure réseau et la création de contenus, notamment dans le domaine de l’éducation et de la culture (campus numérique, cartable numérique...), la question des usages et des modes d’appropriation de ces nouveaux dispositifs n’est que très rarement abordée. » (http://www.ina.fr/produits/publications/da/103/DA103annexes/Despres-Lonnet.fr.html). Pour aller résolument dans cette direction, il ne faudra probablement pas hésiter à aller au devant de la complexité, au sens étymologique du terme (Complexus = tissé ensemble). Cela implique notamment de s’engager résolument dans la multidisciplinarité, de travailler aux frontières entre des domaines qui sont encore aujourd’hui très cloisonnés : l’informatique, les mathématiques, la biologie et la génétique, la robotique, la sociologie et la philosophie… Pour autant et au risque de me répéter, l’informatique doit être mise au service de l’homme ; cela nécessite que le citoyen puisse pleinement participer aux débats. Ce qui nécessite notamment que l’enseignement puisse également prendre en compte la complexité dont je parlais il y a quelques instants car cela est tout à fait fondamental pour permettre à chaque citoyen de participer au débat, débat qui ne saurait se cantonner à quelques experts ; nous en sommes encore, hélas, assez loin.

65 En guise de conclusion…
Comme je me suis attaché à le démontrer, les territoires à défricher, les « terres inconnues » de l’informatique n’ont jamais été aussi nombreuses qu’aujourd’hui, assez pour qu’il soit possible de définir ce que j’appelle « les douze travaux d’Hercule de l’informatique » (référence au discours de Jim Gray lors de la cérémonie de son Turing Award) Cette exploration ne pourra se faire qu’en unissant les moyens de la recherche publique et privée car le chemin à parcourir sera long et semé d’embûches Microsoft en tant qu’acteur engagé dans la recherche en Europe, se doit d’assumer ses responsabilités et donc de jouer un rôle moteur dans ce domaine Pour autant, l’exploration de ces nouveaux territoires devra se faire avec la volonté modeste de réaliser des progrès dans un périmètre défini, impliquant la libre évaluation des options et le libre choix parmi les possibles, dans le cadre d’une discussion publique continue réunissant tous les citoyens sans exclusion Pour défricher ces nouveaux territoires, Microsoft ne suffira certainement pas à la tâche ; nous avons besoin de toutes les bonnes volontés ! Ainsi, l’agenda de Barcelone (mars 2002) précise que 3 % du PIB européen devra être consacré à la recherche en 2001 contre 1,9 % aujourd’hui dont 2/3 devra provenir du secteur privé (http://europa.eu.int/eur-lex/en/com/cnc/2003/com2003_0226en02.pdf). En France, le secteur public contribue à hauteur d’un peu plus de 0,9% du PIB, ce qui veut dire que le secteur privé est encore loin du compte… Microsoft, en tant qu’acteur engagé dans la recherche en Europe, se doit d’assumer ses responsabilités et donc de jouer un rôle moteur dans ce domaine.

66 En guise de conclusion…
Dans cette perspective, il sera possible de repenser le progrès informatique, non pas dans le sens du « plus qu’humain » mais, tout simplement, dans le sens du « plus humain ». Car l’informatique est et restera un outil. Puisse cet outil être et demeurer au service de l’homme et de l’humanité toute entière.

67 Questions ? Je vous remercie de votre attention.


Télécharger ppt "Quelques réflexions sur le futur de l’informatique"

Présentations similaires


Annonces Google