SlideShare une entreprise Scribd logo
Emplacement éventuel pour votre logo
La loi de Moore et ses conséquences…http://public.itrs.net/
10,000Microprocesseur2001Réseau1,000Intel Cancels Top-Speed Pentium 4 ChipThu Oct 14, 6:50 PM ET   Technology - Reuters Intel …canceled plans to introduceitshighest-speed desktop computer chip, ending for now a 25-yearrunthat has seen the speeds of Intel'smicroprocessorsincrease by more than 750 times.1997DisquesArchitecture d’aujourd’hui :Le temps d’accès mémoire ne soutient pas les progrès des vitesses d’horloge des CPUMémoire100Amélioration relative de la bande passante199310,000101,0001989L’amélioration en temps de latence équivaut à celle en bande passanteCPU Clock Speed100Vitesse (MHz)19851DRAM Access Speed1019821	10	1001990                            1997               	          2004Amélioration relative du temps de latenceJason Patterson, « Modern Microprocessors »David Patterson, « LatencylagsBandwidth »Hardware : au seuil d’un changement de paradigme
L’architecture des CPU aujourd’huiLa chaleur devient un problème insurmontableSurface du soleil10,0001,000100101Jet de gaz d’une fuséeRéacteur nucléairePentium®Densité de puissance (W/cm2)8086Assiette chaude40048085800838628648680801970	1980	1990	2000	2010Intel Developer Forum, Printemps 2004 - Pat Gelsinger
Evolutions des CPU : 2004 - 2010Discontinuité ! 2008 : 8 cœurs, 16 processeurs logiques2010 : 32 cœurs, 128 processeurs logiquesDoublement de la densité par unité de surface tous les 18 mois128 processeurs logiques par chip dans moins de 48 mois
Une vue à 5 ans…Intel Developer Forum Fall 2006
Etendue du spectre du parallélismeParallélisme inter-nœudsParallélisme intra-nœuds
La programmation parallèle reste un art difficile…Analyse des causes profondes des boguesHot fixes pour Windows 2000Les erreurs de parallélisme constituent les défauts les plus communs parmi les « erreurs détectables »26 % des défauts analysés étaient des race conditions ou des deadlocks (14 parmi 52)Une synchronisation incorrecte et des erreurs de protocole constituent les défauts les plus communs parmi toutes les erreurs de codage33 % des défauts analysés étaient dus à des erreurs de synchronisation ou de protocole (15 parmi 45)Défauts de Windows Server 2003 (en fin de cycle de développement)Les erreurs de synchronisation arrivent en second sur la liste, juste après les buffer overruns13 % des défauts de fin de cycle de développement étaient dus à des erreurs de synchronisationInitiative « No hangs »12 % des blocages signalés d’IE sont dus à des bogues de synchronisation  47% des blocages signalés de FrontPage sont dus à des bogues de synchronisation (XPSP1)Etudes internes de MicrosoftCompilées par : Tony Andrews, James Larus, MadanMusuvathi, ShazQadeer, SriramK. Rajamani, Jakob Rehof
24 GHz, 1 Cœur 12 GHz, 1 cœur 6 GHz1 Cœur 3 GHz, 4 Cœurs 3 GHz, 8 Cœurs3 GHz2 Cœurs 3GHz1 Cœur Le changement est en marche1 CœurPas de progrès sans effort pour le logiciel traditionnel(Sans un logiciel capable de fonctionner en parallèle, celui-ci n’ira pas plus vite !)Progrès sans peine pour logiciel classique(il s’exécute deux fois plus rapidement tous les 18 mois sans aucun changement !)2 CœursOperations par seconde pour un code exécuté en série4 Cœurs 8 Cœurs Opérations supplémentaires par seconde si l’on peut tirer partie du parallélisme
Qu’est-ce qu’un processeur Many-Core ?Un System on a Chip, modulaire, hétégorène et multiprocesseurServeur : 350 mm2, 120 W, 2000 $Desktop : 200 mm2, 100 W, 400 $Ultra-Mobile : 40 mm2, 5 W,  50 $(2008 45 nm process)
Le Many-Core nécessite des ajustements à travers toute la pileApplicationsConstruction d’applications parallèlesLibrairiesExécution d’applications parallèles à grain finLangages, Compilateurs et  outilsConcurrencyRuntimeCoordination des ressources système et des servicesOS/HyperviseurHardware
Les impacts sur les modèles de développement
Modèles de programmationAgents asynchrones (composition)Passages de message entre domaines isolésProgrammation standard impérative pour réagir aux messagesTolérance à la latence par constructionLa parallélisme est relié à la structure du programmeCollections parallèles (décomposition)Parallélisme des données imbriquéeUtilisation opportuniste du parallélismeConstructions structurées qui conviennent la complexitéTransactions (interactions)Remplacer les verrous par des concepts plus intentionnelsIntégrer avec les actions distribuées au travers des agentsSupport spécial pour les mises à jour en mémoire
Le futur des outils de développementDSL
Les systèmes deviennent plus complexesVolume croissantDes donnéesDu codeÉvolutivité croissanteDe la partie métier (mondialisation, concentrations, restructurations, …)De la partie plate-forme d’exécutionHétérogénéité croissanteDes langages et des paradigmesDes supports de données et des protocoles d’accès d’Des systèmes et des plates-formesDes technologiesLe rythme d’arrivée des nouvelles technologies s’accélèreCe rythme ne se ralentira pasLes vielles technologies ne meurent pas, elles se cachent
Un exemple typique…Un jeune ingénieur en sortie de Bac+5 et ayant des connaissances de base en Java, XML et UML se voit invité, lors de son arrivée en entreprise et avant de commencer son travail, à lire le lundi le rapport public J2EE v1.4 de 228 pagesDans les six premières pages de ce rapport il est fait référence à : EJB, JSP, JMS, JMX, JCA, JAAS, JAXP, JDBC, JNDICette nouvelle version de J2EE est la version Web services et on suppose donc connus les concepts SOAP, SAAJ, JAX-RPC et JAXRChacun des acronymes cités correspond à une spécificationLa spécification de EJB 2.1 correspond à un document PDF de 640 pages qui sera lu le mardiLe mercredi sera consacré à la lecture du document Servlet 2.4 PFD specification de 307 pagesLe jeudi il s’attaque à la lecture du document JSP 2.0 PFD spécification de 374 pagesEt ainsi de suite …Au bout d’un mois de lectures, notre ingénieur est enfin prêt à commencer le travail productif …D’après « Is complexityhurtingJava ? »  de Jason Weiss, dans Java Developer’sJournal, Vol. 7, Issue 10, Octobre 2002.- 16 -
Croissance de la complexité des spécificationsd’après Interactive-Objects
La crise du logiciel en chiffresDépense de 250 milliards de $ par an sur du développement logiciel aux US (en moyenne 430 K$ à 2,3 M$ par projet)16 % de ces projets sont terminés à temps tout en respectant leur budget 31 % de ces projets sont abandonnés principalement en raison de problèmes de qualité, pour une perte de 81 milliards de $ par an53 % coûtent plus cher qu’attendu, dépassant leur budget de 189 % en moyenne, ce qui correspond à un perte de 59 milliards de $ par anLes projets qui se terminent délivrent en moyenne seulement 42% des fonctionnalités planifiées initialementSource : Standish Group 2004
D’après « Kurzweil, Moore, and Accelerating Change », IlkkaTuomi, http://www.jrc.es/~tuomiil/articles/Kurzweil.pdf
Le développement logiciel comme un artisanatTravail intensifOutils génériquesProcessus génériquesApplications uniques« Cousu main » depuis le débutRéutilisation minimeDébordements, défauts, trous de sécurité, échecs des projets
Que faire ?(… sachant que de ne rien faire est une option de plus en plus coûteuse et dangereuse)(… sachant que la complexité a atteint un tel niveau qu’il est hors de portée d’un seul individu d’avoir une vision globale sur un système en évolution)Accélérer encore la course aux nouvelles technologies dans l’espoir qu’une nouvelle solution magique se présente ? Fuite en avant ?Les technologies doivent être évaluées essentiellement pour leur capacité d’intégrationde maîtrise de la complexité
Usines à logicielProcessus spécifiques au domaineOutils & langages spécifique au domaineContenu spécifique au domaineAutomatise les tâches subalternes et machinalesS’améliore grâce à l’expérience et la  mesureDes IDE d’usage général deviennent des usines à logiciel spécifiques au domaine
Augmenter le niveau d’abstraction« The history of programmingis an exercise in hierarchical abstraction. In eachgeneration, language designers produceconstructs for lessonslearned in the previousgeneration, and thenarchitects use them to build more complex and powerful abstractions. » (Smith and Stotts)
¶C(x)              h2¶ 2C(x)¶ t                 2m     ¶ x2ih             =   –CallRecordbase rate: £/scall lengthstorecalljo      biscuits    24         greenpat    cakes       32          pinkEmployeenameaddresspromoteJobdescriptionpayassign0..*Domain Specific LanguagesDéclaratifa>b && c==d<CallRecord>   <caller><number>07713248</number>TextuelIllustréclassMagnox : NuclearPowerStation{public voiddropRods ()Procedural
Domain Specific LanguagesFocalisé sur un seul aspect de la construction d’applicationSuccès significatif dans de larges domaines horizontaux : SQL, Windows Form DesignerConçu pour supporté les concepts définis par un framework sous-jacentAutomatise les tâches machinales avec une génération efficace de codeAméliore l’agilité au visualisant les concepts, en générant du code et d’autres artéfacts, permettant ainsi des itérations rapidesLes construire doit être rapide, peu coûteux et facile
Les éléments d’un DSLConcepts et règles de bonne formationNotations etmises en correspondanceSérialisation XMLArtéfacts générés et reliés
Implémenter un DSLConcepteur du langage de modélisation (outil)Alimente la conception dulangage / outilDéveloppeurAjoute des détails au designc’est-à-dire des métadonnées supplémentaires pourconduire la génération du codeGénérer le codeConcepteurde logiciels/SystèmesAjoute du code (optionnel)
Constuire une application1. Créer des modèles2. Stocker et partager ces modèles4. Déployer, exécuter, gérer l’application3. Ajouter des composants
Oslo en brefServices – étendre les services depuis le client à l’InternetModèles – Faire des modèles un élément clé du développementAPPLICATIONSSERVICESMODELESOslo
Virtualisation du Datacenter aujourd'huiGestion physique et virtuelle.NETIIS.NETExchangeOracleConsolidation de serveur Provisionnement accéléréPRA/PCADev/Test
L'émergence d'un datacenter dynamiqueModèlesManagementVirtualisation d’applications.NET.NETVirtualisationdu hardware Datacenters Physiques

Contenu connexe

En vedette

Bilan psdr-galliano
Bilan psdr-gallianoBilan psdr-galliano
Uso de facebook charla a padres de líderes - patricia osorio domínguez
Uso de facebook   charla a padres de líderes - patricia osorio domínguezUso de facebook   charla a padres de líderes - patricia osorio domínguez
Uso de facebook charla a padres de líderes - patricia osorio domínguez
Patricia Osorio
 
bienvenid@s
bienvenid@sbienvenid@s
bienvenid@s
angelescarlomagno
 
Nathan Stern Voisin-age
Nathan Stern Voisin-ageNathan Stern Voisin-age
Nathan Stern Voisin-age
Fing
 
Definiciones limite de unasucesión
Definiciones limite de unasucesiónDefiniciones limite de unasucesión
Definiciones limite de unasucesión
Isidorogg
 
Analyse et Optimisation des « Landing Pages » - SMX 2010
Analyse et Optimisation des « Landing Pages » - SMX 2010Analyse et Optimisation des « Landing Pages » - SMX 2010
Analyse et Optimisation des « Landing Pages » - SMX 2010
Vincent BOUTON
 
welcometutorial_fre
welcometutorial_frewelcometutorial_fre
welcometutorial_fre
SixthContinentInc
 
PresentacióN De La Saligna
PresentacióN De La SalignaPresentacióN De La Saligna
PresentacióN De La Saligna
amiruchi
 
Beacons
BeaconsBeacons
Produire un document audio accessible avec obi
Produire un document audio accessible avec obiProduire un document audio accessible avec obi
Produire un document audio accessible avec obi
Jean-Pierre CARPANINI
 
End Note Psychomot 2010
End Note Psychomot 2010End Note Psychomot 2010
End Note Psychomot 2010
David BENOIST
 
Valise a energie propre 2010
Valise a energie propre 2010Valise a energie propre 2010
Valise a energie propre 2010
Reporter du monde RDM-ROW Reporter Of World
 
La pandémie de sida serait partie de Kinshasa dans les années 1920
La pandémie de sida serait partie de Kinshasa dans les années 1920La pandémie de sida serait partie de Kinshasa dans les années 1920
La pandémie de sida serait partie de Kinshasa dans les années 1920
morose jeune
 
OPEN DATA WEEK // Présentation du collectif Open Data France par Jean-Marie ...
OPEN DATA WEEK // Présentation du collectif Open Data France  par Jean-Marie ...OPEN DATA WEEK // Présentation du collectif Open Data France  par Jean-Marie ...
OPEN DATA WEEK // Présentation du collectif Open Data France par Jean-Marie ...
Fing
 
Comunicación en el matrimonio
Comunicación en el matrimonioComunicación en el matrimonio
Comunicación en el matrimonio
Rigoberto Morales
 

En vedette (20)

Bilan psdr-galliano
Bilan psdr-gallianoBilan psdr-galliano
Bilan psdr-galliano
 
Mémoire pdf
Mémoire pdfMémoire pdf
Mémoire pdf
 
Uso de facebook charla a padres de líderes - patricia osorio domínguez
Uso de facebook   charla a padres de líderes - patricia osorio domínguezUso de facebook   charla a padres de líderes - patricia osorio domínguez
Uso de facebook charla a padres de líderes - patricia osorio domínguez
 
Idris MEZABER - CV
Idris MEZABER - CVIdris MEZABER - CV
Idris MEZABER - CV
 
bienvenid@s
bienvenid@sbienvenid@s
bienvenid@s
 
Nathan Stern Voisin-age
Nathan Stern Voisin-ageNathan Stern Voisin-age
Nathan Stern Voisin-age
 
Definiciones limite de unasucesión
Definiciones limite de unasucesiónDefiniciones limite de unasucesión
Definiciones limite de unasucesión
 
Analyse et Optimisation des « Landing Pages » - SMX 2010
Analyse et Optimisation des « Landing Pages » - SMX 2010Analyse et Optimisation des « Landing Pages » - SMX 2010
Analyse et Optimisation des « Landing Pages » - SMX 2010
 
welcometutorial_fre
welcometutorial_frewelcometutorial_fre
welcometutorial_fre
 
PresentacióN De La Saligna
PresentacióN De La SalignaPresentacióN De La Saligna
PresentacióN De La Saligna
 
Beacons
BeaconsBeacons
Beacons
 
Produire un document audio accessible avec obi
Produire un document audio accessible avec obiProduire un document audio accessible avec obi
Produire un document audio accessible avec obi
 
Bosphoreen tuquie vera
Bosphoreen tuquie veraBosphoreen tuquie vera
Bosphoreen tuquie vera
 
End Note Psychomot 2010
End Note Psychomot 2010End Note Psychomot 2010
End Note Psychomot 2010
 
Aubade Paris
Aubade ParisAubade Paris
Aubade Paris
 
Valise a energie propre 2010
Valise a energie propre 2010Valise a energie propre 2010
Valise a energie propre 2010
 
La pandémie de sida serait partie de Kinshasa dans les années 1920
La pandémie de sida serait partie de Kinshasa dans les années 1920La pandémie de sida serait partie de Kinshasa dans les années 1920
La pandémie de sida serait partie de Kinshasa dans les années 1920
 
OPEN DATA WEEK // Présentation du collectif Open Data France par Jean-Marie ...
OPEN DATA WEEK // Présentation du collectif Open Data France  par Jean-Marie ...OPEN DATA WEEK // Présentation du collectif Open Data France  par Jean-Marie ...
OPEN DATA WEEK // Présentation du collectif Open Data France par Jean-Marie ...
 
Présentation prépa paces
Présentation prépa paces Présentation prépa paces
Présentation prépa paces
 
Comunicación en el matrimonio
Comunicación en el matrimonioComunicación en el matrimonio
Comunicación en el matrimonio
 

Similaire à Wygday 2008

2012 02-09-eranea-presentation-jug-lausanne
2012 02-09-eranea-presentation-jug-lausanne2012 02-09-eranea-presentation-jug-lausanne
2012 02-09-eranea-presentation-jug-lausanne
Didier Durand
 
La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"
La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"
La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"
OCTO Technology
 
Virtualisation du Poste de Travail - Desktop as a Service - 16h - Atelier VDI...
Virtualisation du Poste de Travail - Desktop as a Service - 16h - Atelier VDI...Virtualisation du Poste de Travail - Desktop as a Service - 16h - Atelier VDI...
Virtualisation du Poste de Travail - Desktop as a Service - 16h - Atelier VDI...
DotRiver
 
.NET Microframework, les joies de l'électronique et du code pour tous
.NET Microframework, les joies de l'électronique et du code pour tous.NET Microframework, les joies de l'électronique et du code pour tous
.NET Microframework, les joies de l'électronique et du code pour tous
Microsoft
 
Réussir une montée en charge avec MongoDB
Réussir une montée en charge avec MongoDBRéussir une montée en charge avec MongoDB
Réussir une montée en charge avec MongoDB
MongoDB
 
Présentation Eranea à Open Source Now 2012
Présentation Eranea à Open Source Now 2012Présentation Eranea à Open Source Now 2012
Présentation Eranea à Open Source Now 2012
Didier Durand
 
Systeme embarque
Systeme embarqueSysteme embarque
Systeme embarque
Mohammed TIGHREMT
 
At2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville PublicAt2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville Public
Emmanuel Hugonnet
 
.NET Microframework: du code, de l’électronique, de la robotique
.NET Microframework: du code, de l’électronique, de la robotique.NET Microframework: du code, de l’électronique, de la robotique
.NET Microframework: du code, de l’électronique, de la robotique
Microsoft
 
Architecture logicielle #1 : introduction
Architecture logicielle #1 : introductionArchitecture logicielle #1 : introduction
Architecture logicielle #1 : introduction
Jean Michel
 
Perfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptxPerfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptx
Marc Bojoly
 
Ecrire et déployer une appli PHP maintenable
Ecrire et déployer une appli PHP maintenableEcrire et déployer une appli PHP maintenable
Ecrire et déployer une appli PHP maintenable
Christophe Villeneuve
 
Outils de construction pour la recherche
Outils de construction pour la rechercheOutils de construction pour la recherche
Outils de construction pour la recherche
Johan Moreau
 
20160216 - From BigData to BigProcessing
20160216 - From BigData to BigProcessing20160216 - From BigData to BigProcessing
20160216 - From BigData to BigProcessing
Pierre-Marie Brunet
 
Entity framework core 2 vs micro orm performances
Entity framework core 2 vs micro orm performancesEntity framework core 2 vs micro orm performances
Entity framework core 2 vs micro orm performances
MSDEVMTL
 

Similaire à Wygday 2008 (20)

2012 02-09-eranea-presentation-jug-lausanne
2012 02-09-eranea-presentation-jug-lausanne2012 02-09-eranea-presentation-jug-lausanne
2012 02-09-eranea-presentation-jug-lausanne
 
La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"
La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"
La Duck Conf 2018 : "Une infrastructure peut en cacher une autre !"
 
Virtualisation du Poste de Travail - Desktop as a Service - 16h - Atelier VDI...
Virtualisation du Poste de Travail - Desktop as a Service - 16h - Atelier VDI...Virtualisation du Poste de Travail - Desktop as a Service - 16h - Atelier VDI...
Virtualisation du Poste de Travail - Desktop as a Service - 16h - Atelier VDI...
 
Agl2012
Agl2012Agl2012
Agl2012
 
.NET Microframework, les joies de l'électronique et du code pour tous
.NET Microframework, les joies de l'électronique et du code pour tous.NET Microframework, les joies de l'électronique et du code pour tous
.NET Microframework, les joies de l'électronique et du code pour tous
 
Réussir une montée en charge avec MongoDB
Réussir une montée en charge avec MongoDBRéussir une montée en charge avec MongoDB
Réussir une montée en charge avec MongoDB
 
§G-VisualDECO
§G-VisualDECO§G-VisualDECO
§G-VisualDECO
 
Présentation Eranea à Open Source Now 2012
Présentation Eranea à Open Source Now 2012Présentation Eranea à Open Source Now 2012
Présentation Eranea à Open Source Now 2012
 
Systeme embarque
Systeme embarqueSysteme embarque
Systeme embarque
 
At2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville PublicAt2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville Public
 
.NET Microframework: du code, de l’électronique, de la robotique
.NET Microframework: du code, de l’électronique, de la robotique.NET Microframework: du code, de l’électronique, de la robotique
.NET Microframework: du code, de l’électronique, de la robotique
 
my_resume(fre)
my_resume(fre)my_resume(fre)
my_resume(fre)
 
Architecture logicielle #1 : introduction
Architecture logicielle #1 : introductionArchitecture logicielle #1 : introduction
Architecture logicielle #1 : introduction
 
Xml
XmlXml
Xml
 
Perfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptxPerfug BOF devoxx2017.pptx
Perfug BOF devoxx2017.pptx
 
Gl intro
Gl introGl intro
Gl intro
 
Ecrire et déployer une appli PHP maintenable
Ecrire et déployer une appli PHP maintenableEcrire et déployer une appli PHP maintenable
Ecrire et déployer une appli PHP maintenable
 
Outils de construction pour la recherche
Outils de construction pour la rechercheOutils de construction pour la recherche
Outils de construction pour la recherche
 
20160216 - From BigData to BigProcessing
20160216 - From BigData to BigProcessing20160216 - From BigData to BigProcessing
20160216 - From BigData to BigProcessing
 
Entity framework core 2 vs micro orm performances
Entity framework core 2 vs micro orm performancesEntity framework core 2 vs micro orm performances
Entity framework core 2 vs micro orm performances
 

Plus de Gregory Renard

WygDay - Session Innovation xBrainLab
WygDay - Session Innovation xBrainLabWygDay - Session Innovation xBrainLab
WygDay - Session Innovation xBrainLab
Gregory Renard
 
WygDay 2010
WygDay 2010WygDay 2010
WygDay 2010
Gregory Renard
 
Approach the future of tourism by the new Technologies
Approach the future of tourism by the new TechnologiesApproach the future of tourism by the new Technologies
Approach the future of tourism by the new Technologies
Gregory Renard
 
Approach the future of cities by the singularity of technologies !
Approach the future of cities by the singularity of technologies !Approach the future of cities by the singularity of technologies !
Approach the future of cities by the singularity of technologies !
Gregory Renard
 
Wygday 2009 Session Innovation
Wygday 2009   Session InnovationWygday 2009   Session Innovation
Wygday 2009 Session Innovation
Gregory Renard
 
Net 2007 Faire Du E Commerce Dans Les Mv
Net 2007   Faire Du E Commerce Dans Les MvNet 2007   Faire Du E Commerce Dans Les Mv
Net 2007 Faire Du E Commerce Dans Les Mv
Gregory Renard
 
Wygday Session PléNièRe (2)
Wygday Session PléNièRe (2)Wygday Session PléNièRe (2)
Wygday Session PléNièRe (2)
Gregory Renard
 
Wygday Session PléNièRe (1)
Wygday Session PléNièRe (1)Wygday Session PléNièRe (1)
Wygday Session PléNièRe (1)
Gregory Renard
 
Vs2008 Breakthrough Software Dev
Vs2008 Breakthrough Software DevVs2008 Breakthrough Software Dev
Vs2008 Breakthrough Software Dev
Gregory Renard
 
Vs2008 Ms Lux
Vs2008 Ms LuxVs2008 Ms Lux
Vs2008 Ms Lux
Gregory Renard
 
Visual Studio 2008 Overview
Visual Studio 2008 OverviewVisual Studio 2008 Overview
Visual Studio 2008 Overview
Gregory Renard
 
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
Gregory Renard
 
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
Gregory Renard
 
Visual Basic 9.0 Trucs Et Astuces Dans Visual Studio 2008
Visual Basic 9.0   Trucs Et Astuces Dans Visual Studio 2008Visual Basic 9.0   Trucs Et Astuces Dans Visual Studio 2008
Visual Basic 9.0 Trucs Et Astuces Dans Visual Studio 2008
Gregory Renard
 
Visual Basic 9.0 Trucs Et Astuces Dans Visual Studio 2008
Visual Basic 9.0   Trucs Et Astuces Dans Visual Studio 2008Visual Basic 9.0   Trucs Et Astuces Dans Visual Studio 2008
Visual Basic 9.0 Trucs Et Astuces Dans Visual Studio 2008
Gregory Renard
 
Techdays Visual Studio 2010
Techdays Visual Studio 2010Techdays Visual Studio 2010
Techdays Visual Studio 2010
Gregory Renard
 

Plus de Gregory Renard (20)

WygDay - Session Innovation xBrainLab
WygDay - Session Innovation xBrainLabWygDay - Session Innovation xBrainLab
WygDay - Session Innovation xBrainLab
 
WygDay 2010
WygDay 2010WygDay 2010
WygDay 2010
 
M Forum
M ForumM Forum
M Forum
 
Approach the future of tourism by the new Technologies
Approach the future of tourism by the new TechnologiesApproach the future of tourism by the new Technologies
Approach the future of tourism by the new Technologies
 
Approach the future of cities by the singularity of technologies !
Approach the future of cities by the singularity of technologies !Approach the future of cities by the singularity of technologies !
Approach the future of cities by the singularity of technologies !
 
Wygday 2009 Session Innovation
Wygday 2009   Session InnovationWygday 2009   Session Innovation
Wygday 2009 Session Innovation
 
Net 2007 Faire Du E Commerce Dans Les Mv
Net 2007   Faire Du E Commerce Dans Les MvNet 2007   Faire Du E Commerce Dans Les Mv
Net 2007 Faire Du E Commerce Dans Les Mv
 
Wygday Session PléNièRe (2)
Wygday Session PléNièRe (2)Wygday Session PléNièRe (2)
Wygday Session PléNièRe (2)
 
Wygday Session PléNièRe (1)
Wygday Session PléNièRe (1)Wygday Session PléNièRe (1)
Wygday Session PléNièRe (1)
 
Web Services
Web ServicesWeb Services
Web Services
 
Vs2008 Linq
Vs2008 LinqVs2008 Linq
Vs2008 Linq
 
Vs2008 Breakthrough Software Dev
Vs2008 Breakthrough Software DevVs2008 Breakthrough Software Dev
Vs2008 Breakthrough Software Dev
 
Vs2008 Ms Lux
Vs2008 Ms LuxVs2008 Ms Lux
Vs2008 Ms Lux
 
Visual Studio 2008 Overview
Visual Studio 2008 OverviewVisual Studio 2008 Overview
Visual Studio 2008 Overview
 
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
 
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
Visual Basic 9.0 – Visual Studio 2008 Quoi De Neuf 2.0
 
Visual Basic 9.0 Trucs Et Astuces Dans Visual Studio 2008
Visual Basic 9.0   Trucs Et Astuces Dans Visual Studio 2008Visual Basic 9.0   Trucs Et Astuces Dans Visual Studio 2008
Visual Basic 9.0 Trucs Et Astuces Dans Visual Studio 2008
 
Visual Basic 9.0 Trucs Et Astuces Dans Visual Studio 2008
Visual Basic 9.0   Trucs Et Astuces Dans Visual Studio 2008Visual Basic 9.0   Trucs Et Astuces Dans Visual Studio 2008
Visual Basic 9.0 Trucs Et Astuces Dans Visual Studio 2008
 
Tour Horizont.Net
Tour Horizont.NetTour Horizont.Net
Tour Horizont.Net
 
Techdays Visual Studio 2010
Techdays Visual Studio 2010Techdays Visual Studio 2010
Techdays Visual Studio 2010
 

Wygday 2008

  • 2. La loi de Moore et ses conséquences…http://public.itrs.net/
  • 3. 10,000Microprocesseur2001Réseau1,000Intel Cancels Top-Speed Pentium 4 ChipThu Oct 14, 6:50 PM ET Technology - Reuters Intel …canceled plans to introduceitshighest-speed desktop computer chip, ending for now a 25-yearrunthat has seen the speeds of Intel'smicroprocessorsincrease by more than 750 times.1997DisquesArchitecture d’aujourd’hui :Le temps d’accès mémoire ne soutient pas les progrès des vitesses d’horloge des CPUMémoire100Amélioration relative de la bande passante199310,000101,0001989L’amélioration en temps de latence équivaut à celle en bande passanteCPU Clock Speed100Vitesse (MHz)19851DRAM Access Speed1019821 10 1001990 1997 2004Amélioration relative du temps de latenceJason Patterson, « Modern Microprocessors »David Patterson, « LatencylagsBandwidth »Hardware : au seuil d’un changement de paradigme
  • 4. L’architecture des CPU aujourd’huiLa chaleur devient un problème insurmontableSurface du soleil10,0001,000100101Jet de gaz d’une fuséeRéacteur nucléairePentium®Densité de puissance (W/cm2)8086Assiette chaude40048085800838628648680801970 1980 1990 2000 2010Intel Developer Forum, Printemps 2004 - Pat Gelsinger
  • 5. Evolutions des CPU : 2004 - 2010Discontinuité ! 2008 : 8 cœurs, 16 processeurs logiques2010 : 32 cœurs, 128 processeurs logiquesDoublement de la densité par unité de surface tous les 18 mois128 processeurs logiques par chip dans moins de 48 mois
  • 6. Une vue à 5 ans…Intel Developer Forum Fall 2006
  • 7. Etendue du spectre du parallélismeParallélisme inter-nœudsParallélisme intra-nœuds
  • 8. La programmation parallèle reste un art difficile…Analyse des causes profondes des boguesHot fixes pour Windows 2000Les erreurs de parallélisme constituent les défauts les plus communs parmi les « erreurs détectables »26 % des défauts analysés étaient des race conditions ou des deadlocks (14 parmi 52)Une synchronisation incorrecte et des erreurs de protocole constituent les défauts les plus communs parmi toutes les erreurs de codage33 % des défauts analysés étaient dus à des erreurs de synchronisation ou de protocole (15 parmi 45)Défauts de Windows Server 2003 (en fin de cycle de développement)Les erreurs de synchronisation arrivent en second sur la liste, juste après les buffer overruns13 % des défauts de fin de cycle de développement étaient dus à des erreurs de synchronisationInitiative « No hangs »12 % des blocages signalés d’IE sont dus à des bogues de synchronisation  47% des blocages signalés de FrontPage sont dus à des bogues de synchronisation (XPSP1)Etudes internes de MicrosoftCompilées par : Tony Andrews, James Larus, MadanMusuvathi, ShazQadeer, SriramK. Rajamani, Jakob Rehof
  • 9. 24 GHz, 1 Cœur 12 GHz, 1 cœur 6 GHz1 Cœur 3 GHz, 4 Cœurs 3 GHz, 8 Cœurs3 GHz2 Cœurs 3GHz1 Cœur Le changement est en marche1 CœurPas de progrès sans effort pour le logiciel traditionnel(Sans un logiciel capable de fonctionner en parallèle, celui-ci n’ira pas plus vite !)Progrès sans peine pour logiciel classique(il s’exécute deux fois plus rapidement tous les 18 mois sans aucun changement !)2 CœursOperations par seconde pour un code exécuté en série4 Cœurs 8 Cœurs Opérations supplémentaires par seconde si l’on peut tirer partie du parallélisme
  • 10. Qu’est-ce qu’un processeur Many-Core ?Un System on a Chip, modulaire, hétégorène et multiprocesseurServeur : 350 mm2, 120 W, 2000 $Desktop : 200 mm2, 100 W, 400 $Ultra-Mobile : 40 mm2, 5 W, 50 $(2008 45 nm process)
  • 11. Le Many-Core nécessite des ajustements à travers toute la pileApplicationsConstruction d’applications parallèlesLibrairiesExécution d’applications parallèles à grain finLangages, Compilateurs et outilsConcurrencyRuntimeCoordination des ressources système et des servicesOS/HyperviseurHardware
  • 12. Les impacts sur les modèles de développement
  • 13. Modèles de programmationAgents asynchrones (composition)Passages de message entre domaines isolésProgrammation standard impérative pour réagir aux messagesTolérance à la latence par constructionLa parallélisme est relié à la structure du programmeCollections parallèles (décomposition)Parallélisme des données imbriquéeUtilisation opportuniste du parallélismeConstructions structurées qui conviennent la complexitéTransactions (interactions)Remplacer les verrous par des concepts plus intentionnelsIntégrer avec les actions distribuées au travers des agentsSupport spécial pour les mises à jour en mémoire
  • 14. Le futur des outils de développementDSL
  • 15. Les systèmes deviennent plus complexesVolume croissantDes donnéesDu codeÉvolutivité croissanteDe la partie métier (mondialisation, concentrations, restructurations, …)De la partie plate-forme d’exécutionHétérogénéité croissanteDes langages et des paradigmesDes supports de données et des protocoles d’accès d’Des systèmes et des plates-formesDes technologiesLe rythme d’arrivée des nouvelles technologies s’accélèreCe rythme ne se ralentira pasLes vielles technologies ne meurent pas, elles se cachent
  • 16. Un exemple typique…Un jeune ingénieur en sortie de Bac+5 et ayant des connaissances de base en Java, XML et UML se voit invité, lors de son arrivée en entreprise et avant de commencer son travail, à lire le lundi le rapport public J2EE v1.4 de 228 pagesDans les six premières pages de ce rapport il est fait référence à : EJB, JSP, JMS, JMX, JCA, JAAS, JAXP, JDBC, JNDICette nouvelle version de J2EE est la version Web services et on suppose donc connus les concepts SOAP, SAAJ, JAX-RPC et JAXRChacun des acronymes cités correspond à une spécificationLa spécification de EJB 2.1 correspond à un document PDF de 640 pages qui sera lu le mardiLe mercredi sera consacré à la lecture du document Servlet 2.4 PFD specification de 307 pagesLe jeudi il s’attaque à la lecture du document JSP 2.0 PFD spécification de 374 pagesEt ainsi de suite …Au bout d’un mois de lectures, notre ingénieur est enfin prêt à commencer le travail productif …D’après « Is complexityhurtingJava ? » de Jason Weiss, dans Java Developer’sJournal, Vol. 7, Issue 10, Octobre 2002.- 16 -
  • 17. Croissance de la complexité des spécificationsd’après Interactive-Objects
  • 18. La crise du logiciel en chiffresDépense de 250 milliards de $ par an sur du développement logiciel aux US (en moyenne 430 K$ à 2,3 M$ par projet)16 % de ces projets sont terminés à temps tout en respectant leur budget 31 % de ces projets sont abandonnés principalement en raison de problèmes de qualité, pour une perte de 81 milliards de $ par an53 % coûtent plus cher qu’attendu, dépassant leur budget de 189 % en moyenne, ce qui correspond à un perte de 59 milliards de $ par anLes projets qui se terminent délivrent en moyenne seulement 42% des fonctionnalités planifiées initialementSource : Standish Group 2004
  • 19. D’après « Kurzweil, Moore, and Accelerating Change », IlkkaTuomi, http://www.jrc.es/~tuomiil/articles/Kurzweil.pdf
  • 20. Le développement logiciel comme un artisanatTravail intensifOutils génériquesProcessus génériquesApplications uniques« Cousu main » depuis le débutRéutilisation minimeDébordements, défauts, trous de sécurité, échecs des projets
  • 21. Que faire ?(… sachant que de ne rien faire est une option de plus en plus coûteuse et dangereuse)(… sachant que la complexité a atteint un tel niveau qu’il est hors de portée d’un seul individu d’avoir une vision globale sur un système en évolution)Accélérer encore la course aux nouvelles technologies dans l’espoir qu’une nouvelle solution magique se présente ? Fuite en avant ?Les technologies doivent être évaluées essentiellement pour leur capacité d’intégrationde maîtrise de la complexité
  • 22. Usines à logicielProcessus spécifiques au domaineOutils & langages spécifique au domaineContenu spécifique au domaineAutomatise les tâches subalternes et machinalesS’améliore grâce à l’expérience et la mesureDes IDE d’usage général deviennent des usines à logiciel spécifiques au domaine
  • 23. Augmenter le niveau d’abstraction« The history of programmingis an exercise in hierarchical abstraction. In eachgeneration, language designers produceconstructs for lessonslearned in the previousgeneration, and thenarchitects use them to build more complex and powerful abstractions. » (Smith and Stotts)
  • 24. ¶C(x) h2¶ 2C(x)¶ t 2m ¶ x2ih = –CallRecordbase rate: £/scall lengthstorecalljo biscuits 24 greenpat cakes 32 pinkEmployeenameaddresspromoteJobdescriptionpayassign0..*Domain Specific LanguagesDéclaratifa>b && c==d<CallRecord> <caller><number>07713248</number>TextuelIllustréclassMagnox : NuclearPowerStation{public voiddropRods ()Procedural
  • 25. Domain Specific LanguagesFocalisé sur un seul aspect de la construction d’applicationSuccès significatif dans de larges domaines horizontaux : SQL, Windows Form DesignerConçu pour supporté les concepts définis par un framework sous-jacentAutomatise les tâches machinales avec une génération efficace de codeAméliore l’agilité au visualisant les concepts, en générant du code et d’autres artéfacts, permettant ainsi des itérations rapidesLes construire doit être rapide, peu coûteux et facile
  • 26. Les éléments d’un DSLConcepts et règles de bonne formationNotations etmises en correspondanceSérialisation XMLArtéfacts générés et reliés
  • 27. Implémenter un DSLConcepteur du langage de modélisation (outil)Alimente la conception dulangage / outilDéveloppeurAjoute des détails au designc’est-à-dire des métadonnées supplémentaires pourconduire la génération du codeGénérer le codeConcepteurde logiciels/SystèmesAjoute du code (optionnel)
  • 28. Constuire une application1. Créer des modèles2. Stocker et partager ces modèles4. Déployer, exécuter, gérer l’application3. Ajouter des composants
  • 29. Oslo en brefServices – étendre les services depuis le client à l’InternetModèles – Faire des modèles un élément clé du développementAPPLICATIONSSERVICESMODELESOslo
  • 30. Virtualisation du Datacenter aujourd'huiGestion physique et virtuelle.NETIIS.NETExchangeOracleConsolidation de serveur Provisionnement accéléréPRA/PCADev/Test
  • 31. L'émergence d'un datacenter dynamiqueModèlesManagementVirtualisation d’applications.NET.NETVirtualisationdu hardware Datacenters Physiques

Notes de l'éditeur

  1. Agents are “parallel by construction”