Master première année. Mention : Statistiques et Traitement de Données «STD» Rapport de stage

Dimension: px
Commencer à balayer dès la page:

Download "Master première année. Mention : Statistiques et Traitement de Données «STD» Rapport de stage"

Transcription

1 Université Blaise Pascal UFR Sciences et Technologie Département de Mathématique et Informatique AUBIERE CEDEXFrance Laboratoire de Météorologie Physique (LaMP) 24 avenue des Landais Aubière Master première année Mention : Statistiques et Traitement de Données «STD» Rapport de stage Simulation rapide du transfert radiatif en 3D dans les nuages atmosphériques à l'aide de processeur graphique «GPU» Validation du cas du nuage plan-parallèle homogène Réalisé par : Imane Hammouali Tuteurs de stage: Mr. Frédéric Szczap (LaMP) -Mr. Thierry Faure (LISC) Stage effectué à l'opgc (Observatoire de Physique du Globe de Clermont-Ferrand) LaMP (Laboratoire de Météorologie Physique) LISC (Laboratoire d'ingénierie pour les Systèmes Complexes) Du 06 Avril au 31 Juillet 2010 Année Scolaire 2009/2010 1

2 Remerciements Je tiens à remercier tout particulièrement et à témoigner ma reconnaissance aux personnes suivantes qui ont su m'accueillir chaleureusement au sein du laboratoire LaMP et dont l'aide m'a été précieuse tout au long du stage. Monsieur Fréderic Szczap et Monsieur Thierry Faure, pour la confiance qu'ils m'ont accordée dès mon arrivée au sein du laboratoire. Mes remerciements vont également à tout le personnel du laboratoire pour leur accueil, leur bonne humeur quotidienne et leur capacité de travail en équipe exemplaire. Année Scolaire 2009/2010 2

3 TABLES DE MATIERES INTRODUCTION...7 PARTIE I PRESENTATION DE L ORGANISME Observatoire de Physique du Globe de Clermont-Ferrand ''OPGC''.9 2 Laboratoire de Météorologie Physique ''LAMP''...10 PARTIE II - DESCRIPTION DES TECHNOLOGIES UTILISÉES Langage C Processeur graphique Définition Critères de choix en faveur du GPU Architecture Evolution de la puissance de calcul CUDA : une nouvelle architecture pour la programmation sur carte graphique Introduction à CUDA Les abstractions clés de CUDA La hiérarchie des Threads La mémoire partagée La barrière de synchronisation Programmation avec CUDA Runtime API Mode émulation Méthode de MC «Monte Carlo»...19 PARTIE III PRÉSENTATION DE L'EXISTANT Présentation générale de MCX Historique Objectif Description détaillée du code source de MCX Organisation du code MCX La structure de l algorithme MC 25 PARTIE IV L ETUDE Présentation du transfert radiatif dans un nuage plan-parallèle homogène Modèle du nuage plan- parallèle homogène Le rayonnement La Nature de l'interaction nuage/rayonnement Les modifications apportées au code MCX Propriétés optiques Direction initiale du photon Position initiale du photon Les conditions limites Les conditions cycliques Calcul des énergies La réflectance, la transmittance et l'absorptance...36 Année Scolaire 2009/2010 3

4 3 Résultats et analyse Erreur statistique sur les flux radiatifs Analyse des résultats du MCXRT(Monte Carlo extreme Radiatif Transfer Comparaison des résultats de MCXRT, MCLaMP et 3DMCPOL Réflectance Transmittance Absorptance Conclusion Temps d exécution Le code MCFortran Comparaison des propriétés radiatives de MCFortran2, MCLaMP et MCXRT Analyse des résultats de MCFortran Temps d exécution Le problème de la taille du nuage 55 CONCLUSION ET PERSPECTIVES...56 REFERENCES BIBLIOGRAPHIQUES...58 ANNEXE...59 A Rapport d'installation Installation de la bibliothèque CUDA Installation du logiciel MCX «Monte Carlo extreme»...60 B Le logiciel MCX L'exécution Le lancement de la simulation Les paramètres d'exécution La configuration Le fichier binaire...62 C Modifications apportées au code MCX 63 1 Programme MCXRT Le fichier MCXRT_utilis.c Le fichier MCXRT_utilis.h Le fichier logistic_rand.cu Le fichier MCXRT_core.cu.73 2 Exécution du programme MCXRT La démarche d exécution Le fichier d entrée Résultat d exécution 88 Année Scolaire 2009/2010 4

5 Liste des figures Figure 1: Architecture de CPU...12 Figure 2: Architecture de GPU...12 Figure 3: Évolution des puissances de calcul de CPU et de GPU...13 Figure 4: Exemple de la hiérarchie de groupe de threads...14 Figure 5: Hiérarchie de la mémoire dans le GPU...15 Figure 6: Les différentes composantes de CUDA...16 Figure 7 : Diagramme de l algorithme de Monte Carlo dans le code MCX.25 Figure 8 : Nuage plan-parallèle homogène Figure 9 : Exemple de l interaction nuage/rayonnement.30 Figure 10 : Présentation de l angle zénithal et azimuthal..32 Figure 11 : Exemple des photons réfléchis et transmis par le nuage..33 Figure 12.1 : La variation des flux radiatifs normalisés pour w0 = Figure 12.2 : La variation des flux radiatifs normalisés pour w0 = Figure 12.3 : La variation des flux radiatifs normalisés pour w0 = Figure 13.1 : Comparaison de la réflectance pour MCXRT, MCLaMP et 3DMCPOL.40 Figure 13.2 : Trois graphes représentant l erreur simple de R-MCXRT 41 Figure 14.1 : Comparaison de la transmittance pour MCXRT, MCLaMP et 3DMCPOL..42 Figure 14.2 : Trois graphes représentant l erreur simple de T-MCXRT.43 Figure 15.1 : Comparaison de l absorptance pour MCXRT, MCLaMP et 3DMCPOL 44 Figure 15.2 : Deux graphes représentant l erreur simple de A-MCXRT...45 Figure 16 : Illustration du temps d exécution de MCXRT et MCLaMP.47 Figure 17 : Evolution du gain de temps d exécution de MCXRT..47 Figure 18.1 : Comparaison de la réflectance pour MCFortran2, MCLaMP et MCXRT.48 Figure 18.2 : Trois graphes représentant l erreur simple de R-MCFortran2..48 Figure 19.1 :Comparaison de la transmittance pour MCFortran2,MCLaMP et MCXRT.50 Figure 19.2 : Trois graphes représentant l erreur simple de T-MCFortran2 51 Figure 20.1 :Comparaison de l absorptance pour MCFortran2,MCLaMP et MCXRT 52 Figure 20.2 : Deux graphes représentant l erreur simple de A-MCFortran2..52 Figure 21 : Illustration du temps d exécution de MCXRT et MCFortran2 54 Figure 22 : Evolution du gain de temps d exécution de MCFortran2.54 Figure 23 : comparaison de la réflectance d un nuage de taille 600*600*600 et un autre de taille 60*60* Liste des définitions Définition 1 : Thread...13 Définition 2 : DRAM...16 Définition 3 : API...16 Définition 4 : NVCC...17 Définition 5 : Chaîne de Markov...20 Définition 6 : Fluence 22 Définition 7 : Indice de réfraction..22 Définition 8 : Anisotropie...22 Définition 9 : Mesernne Twister.23 Année Scolaire 2009/2010 5

6 Liste des tableaux Tableau 1 : Récapitulatif des caractéristiques des mémoires..16 Tableau 2 : Les valeurs de l erreur statistique de MC sur la réflectance 41 Tableau 3 : L erreur statistique de MC sur la transmittance 43 Tableau 4 : L erreur statistique de MC sur l absorptance..45 Tableau 5 : L erreur statistique de MC sur la réflectance pour le code de MCFortran2 53 Tableau 6 : L erreur statistique de MC sur la transmittance pour le code de MCFortran Tableau 7 : L erreur statistique de MC sur l absorptance pour le code de MCFortran2 53 Année Scolaire 2009/2010 6

7 INTRODUCTION Dans le cadre de ma première année de Master Statistiques et Traitement de Données «STD», j'ai eu l'opportunité d'effectuer un stage de 4 mois «du 6 Avril au 31 Juillet» à l'observatoire de Physique du Globe de Clermont-Ferrand (OPGC), plus précisément au sein du Laboratoire de Météorologie Physique (LaMP). LaMP est une composante de l'opgc spécialisée dans la recherche atmosphérique. Ces principales études portent sur l'impact des aérosols et des nuages sur le climat. Les nuages recouvrent à peu prés 70% de la surface du globe. Ils jouent un rôle important dans la régulation du climat, c'est la raison pour laquelle l'évolution de la couverture nuageuse ainsi que ses propriétés radiatives sont très étudiées. Les nuages participent à l augmentation ou à la diminution du réchauffement climatique, à travers deux effets antagonistes: * l'effet de serre: les nuages piègent le rayonnement thermique émis par la terre et tendent ainsi à réchauffer l'atmosphère. * l'effet d'albédo: les nuages réfléchissent le rayonnement solaire vers l'espace et contribuent ainsi au refroidissement atmosphérique. Pour mieux comprendre le rôle des nuages dans le contexte du réchauffement climatique à l échelle globale. Il faut donc étudier les interactions entre les nuages et le rayonnement solaire et thermique, cela revient en particulier à calculer les propriétés radiatives des nuages. Afin de comprendre l'impact des nuages sur l'environnement, on a donc besoin de simuler le transfert radiatif dans les nuages atmosphériques. Les nuages présentent des formes géométriques complexes et des propriétés optiques spatiales différentes selon leur nature, c est la raison pour laquelle il est difficile de calculer leurs propriétés radiatives. Pour cela, on a recours à des méthodes statistiques de type Monte Carlo (MC) qui demandent beaucoup de ressources informatiques. Ces méthodes de calcul ne sont pas encore opérationnelles dans les applications nécessaires à l étude des nuages (analyse d image satellite, calcul du réchauffement dans les modèles climatiques). Pour contourner cette difficulté, les scientifiques idéalisent les nuages en utilisant le modèle du nuage plan-parallèle homogène. Le travail qui m a été demandé consiste à développer un programme informatique dont l'objectif est de simuler le transfert radiatif en trois dimensions dans les nuages atmosphériques à l'aide d'un processeur graphique ''GPU'', et de le valider dans le cas du nuage plan-parallèle homogène. Le code source de l'application s'appuiera sur celui du logiciel Monte Carlo extreme ''MCX'' [1]. Ce dernier est basé sur l'approche statistique des méthodes de simulation de Monte Carlo, ainsi que sur la technologie de programmation CUDA. Année Scolaire 2009/2010 7

8 Les différentes missions qui m ont été assignées sont d étudier les technologies proposées par mes tuteurs de stage, d analyser le code existant de MCX, de développer un programme qui simule le transfert radiatif en 3D dans un nuage atmosphérique planparallèle homogène, et enfin d analyser les résultats obtenus à partir de cette simulation. Dans la première partie de mon rapport, je vous présenterai les organismes OPGC et LaMP. La deuxième partie sera consacrée à la description des technologies et de la méthode de simulation, qui seront utilisées durant le stage. Ensuite, nous étudierons le logiciel MCX ainsi que son code source en troisième partie. Dans la dernière partie, je montrerai les différentes modifications effectuées sur le code source de MCX, puis les étapes de l'avancement des travaux de la simulation du transfert radiatif en 3D dans un nuage plan-parallèle homogène, et enfin l'analyse sur les résultats obtenus suite à cette simulation. Année Scolaire 2009/2010 8

9 PARTIE I DESCRIPTION DE L ORGANISME 1. Organisme Du 6 Avril au 31 juillet 2010, le laboratoire de météorologie physique «LaMP» de l observatoire de physique du globe de Clermont-Ferrand «OPGC» m'a accueilli sous la tutelle de Frédéric Szczap et Thierry Faure. 1.1 Observatoire de Physique du Globe de Clermont-Ferrand ''OPGC'' L'observatoire de Physique du Globe de Clermont-Ferrand (OPGC) est un Observatoire des Sciences de l Univers (OSU), et l héritier direct de l Observatoire Météorologique du Puy de Dôme, fondé en 1871 par le professeur Emile Alluard. La configuration actuelle de l OPGC date de Il s acquitte des quatre missions essentielles des OSU : * Il fournit à la communauté nationale et internationale des travaux liés à ses activités de recherche. * Il contribue au progrès de la connaissance de la Terre par l'acquisition et l'archivage de données d'observation et il contribue aux tâches de surveillance et de prévision des phénomènes naturels. * Il contribue dans le cadre de l Université Blaise Pascal de Clermont-Ferrand à la formation des étudiants et des personnels de recherche. * Il concourt à la diffusion des connaissances, en particulier auprès des personnels enseignants et des usagers du service public. L'OPGC est une fédération de deux laboratoires: * Le Laboratoire de Météorologie Physique «LaMP» * Le Laboratoire Magmas et Volcans «LMV» Année Scolaire 2009/2010 9

10 1.2 Laboratoire de Météorologie Physique ''LaMP'' LaMP est une composante de l'opgc spécialisée dans l'atmosphère. Sa problématique principale concerne l étude du rôle des aérosols et des nuages dans l évolution du climat et celle de la composition chimique stratosphérique. La recherche du Laboratoire de Météorologie Physique est fédérée autour de 4 thèmes principaux: * Observations et instrumentations * Pollution: Aérosols et nuages de la troposphère * Cycle de vie des nuages étendus et aérosols * Nuages précipitants Ces recherches dans le domaine atmosphérique nécessitent des moyens techniques importants, comme des avions et des satellites ainsi qu'un traitement informatique particulièrement développé. L'importance des moyens mis en jeu impose de nombreuses collaborations extérieures, aussi bien nationales qu internationales. La simulation fait partie des technologies clés éminemment transverses. Aussi, le laboratoire de météorologie physique développe des programmes de simulation pour étudier l'impact climatique de la couverture nuageuse et de l'interaction nuagesrayonnement, interaction troposphère-stratosphère et chimie humide de l'atmosphèreaérosols. Année Scolaire 2009/

11 PARTIE II DESCRIPTION DES TECHNOLOGIES ET MÉTHODES UTILISEES 1. Langage C Le langage C est un langage de programmation impératif conçu pour la programmation système, c'est à dire une programmation qui vise au développement des programmes qui font partie du système d'exploitation d un ordinateur ou qui en réalisent les fonctions. J'ai décidé de développer en C pour plusieurs raisons. La première raison est que ce langage permet au développeur de s'intéresser non pas au traitement des données, mais aux interfaces, aux protocoles et à la gestion des ressources, telles que le temps et l espace en mémoire. Puis la seconde raison est que le code existant étant programmé en C, il était donc préférable d'utiliser le même langage de programmation afin de faciliter l'adaptation de ce code à mes besoins. 2. Processeur graphique Cette partie consiste à présenter le GPU et à justifier le choix d exploiter la mémoire de ce dernier dans les calculs nécessaires à la simulation. 2.1 Définitions * CPU est une unité centrale de traitement, optimisée pour exécuter le plus rapidement possible des calculs très variés. Pour cela, le CPU nécessite des structures de contrôle sophistiquées. * GPU est destiné à effectuer des opérations d affichage et de manipulation de données graphiques. Dans le but d'exploiter pleinement les performances de ce dernier, la compagnie Nvidia a créé des GPU dédiés spécialement à des calculs de haut débit afin d'alléger le travail du CPU. Année Scolaire 2009/

12 2.2 Critères de choix en faveur du GPU Architecture Figure 1 : Architecture de CPU Le processeur CPU est composé d un ensemble d unités arithmétiques et logiques «ALU» dédiées pour effectuer des calculs arithmétiques et des tests, d une mémoire cache pour alléger l accès à la mémoire centrale et accélérer les calculs effectués par les ALUs. Il possède aussi une unité de contrôle pour gérer la synchronisation entre chaque composante du CPU. Figure 2 : Architecture de GPU Dans la figure ci-dessus, l'architecture du GPU est représentée sous la forme de 128 ALUs devisés en 8 partitions, chacune de ces partitions possède une mémoire cache et une unité de contrôle indépendante des autres partitions. Pour conclure, le GPU conserve une proportion énorme de son architecture pour les calculs, ce qui rend le GPU plus performant dans le cas de calculs massifs face au CPU. Année Scolaire 2009/

13 2.2.2 Évolution de la puissance de calcul A partir de 2003 la puissance de calcul des GPUs a commencé à surpasser celle des CPUs grâce à l'exploitation des processeurs graphiques dans les calculs intensifs de haut niveau, ce qui a déclenché une évolution exponentielle des GPU représentée par le graphe ci-dessous. 3 CUDA: Une nouvelle architecture pour la programmation sur carte graphique Dans cette partie, nous allons présenter l'architecture et la programmation CUDA, afin de prendre connaissance de ses fonctionnalités. 3.1 Introduction à CUDA En 2007 la compagnie NVIDIA a réalisé CUDA «Compute Unified Device Architecture», un modèle de programmation parallèle qui manipule de façon transparente la puissance d une carte graphique composée de plusieurs multiprocesseurs (à partir de GeForce 8800). Ce modèle de programmation supporte différents langages de programmation tels que C, fortran et C++. Cette technologie prend en charge trois abstractions clés qui sont : la hiérarchie de groupes de threads (1) les mémoires partagées la barrière de synchronisation (1)Thread : Un thread est une tâche similaire à un processus, ce dernier peut contenir un ou plusieurs threads. D'un point de vue de l'utilisateur, ces exécutions semblent se dérouler en parallèles. A la différence des processus, les threads partagent le même espace mémoire. Année Scolaire 2009/

14 Ces trois critères permettent de gérer le parallélisme offert par la carte graphique. Ils donnent la possibilité de découper le problème en sous problèmes qui peuvent être résolus de manière indépendante, parallèle et surtout la plus fine possible. Les trois abstractions sont accessibles à travers de nouvelles extensions ajoutées au langage de programmation C. L'exécution d'un programme CUDA peut alors se faire sur un certain nombre de processeurs différents, sans tenir compte de l architecture de la carte graphique. 3.2 Les abstractions clés de CUDA Dans ce chapitre je vais vous expliquer les abstractions clés de CUDA, évoquées précédemment La hiérarchie des groupes de threads Pour comprendre le parallélisme offert par CUDA, une présentation de la hiérarchie des groupes de threads s'impose. Le kernel est une fonction qui spécifie une portion de code à exécuter par tous les threads en parallèle sur le device (ici GPU). L host (ici le CPU) ordonne au GPU d effectuer les calculs. Année Scolaire 2009/

15 Comme illustré dans la figure précédente, chaque thread est contenu dans un bloc de threads par des coordonnées bidimensionnelles ou tridimensionnelles. Chaque bloc est caractérisé par un vecteur bidimensionnel et appartient à une grille. A partir de ces trois éléments «thread, bloc, grille», nous pouvons distinguer deux niveaux de regroupement de threads: * Niveau préemptif: l'ordre d'exécution des blocs est indéterminé, chaque bloc est exécuté indépendamment des autres blocs contenus dans la grille. * Niveau coopératif: tous les blocs ont le même nombre de threads (Ex: 512 blocs pour une carte Tesla C1060). Dans le cas de notre étude, nous avons choisi le niveau coopératif car il permet d'une part d'échanger des données entre les threads et d'autre part, de synchroniser les threads du même bloc. Après avoir étudié la hiérarchie des threads, je vais dorénavant vous présenter la deuxième abstraction clé de CUDA La mémoire partagée Après la hiérarchie des threads, une question se pose à propos de CUDA : Comment se partage la mémoire entre les threads? Pour répondre à cette question je vais vous présenter la deuxième abstraction clé de CUDA, ensuite je vous parlerai des différentes mémoires accessibles par les threads. Comme illustré dans la figure suivante, chaque bloc de threads contient sa propre zone mémoire appelée shared memory ''mémoire partagée''. Cette dernière est présente sur le chipset. Cette mémoire est accessible uniquement par les threads du même bloc en lecture et en écriture. Chaque thread possède en local une mémoire ''local memory'' qui est réservée automatiquement aux structures de grandes tailles ou de tailles inconnues. Figure 5 : Hiérarchie de la mémoire dans le GPU Année Scolaire 2009/

16 De plus, les threads ont accès également à la mémoire globale, la mémoire constante et à la mémoire texture. Mémoire Localisation Cachée Accès Portée Globale DRAM (2) NON Lecture/Écriture Les Threads+Hôte Constante DRAM OUI Écriture Les Threads+Hôte Texture DRAM OUI Écriture Les Threads+Hôte Tableau1: Récapitulatif des caractéristiques des mémoires La barrière de synchronisation Dans la librairie CUDA, il existe plusieurs fonctions permettant de mettre en place des barrières de synchronisation pour la gestion des threads. Le principe de la barrière de synchronisation est simple : chaque thread qui arrivera sur cette barrière devra attendre jusqu'à ce que tous les autres threads soient arrivés à cette barrière. La fonction CudaThreadsSynchronize () est l'une des fonctions de synchronisation qui permet de synchroniser l'ensemble des threads d'une grille. 3.3 Programmation avec CUDA Dans cette partie, nous nous intéressons à la programmation parallèle offerte par CUDA. Pour commencer, je vais vous présenter les composantes de CUDA, ensuite nous allons étudier les trois niveaux de programmation proposés par ce dernier et ses APIs (3). Le graphe ci-dessous représente les trois modules qui forment CUDA. (2) DRAM ''Dynamic Random Access Memory'': est la mémoire informatique dans laquelle un ordinateur place les données lors de leur traitement. (3) API ''Application Programming Interface'': est une interface de programmation qui possède un ensemble de fonctions, procédures ou classes mises à disposition des programmes par une bibliothèque ou un système d'exploitation. Année Scolaire 2009/

17 Après avoir pris connaissance des composantes de CUDA, nous allons maintenant nous intéresser aux trois niveaux de programmation de CUDA: * 1 er niveau: Utilisation d'une librairie externe : Ce niveau utilise des fonctions prédéfinies dans des librairies qui servent de liaison entre le programme et le GPU, comme CUBLAS et CUFFT. Ces librairies fournissent un ensemble d outils pour réaliser des calculs d algèbre linéaire sur le GPU ou calculer la transformée de Fourrier. A ce niveau, le programmeur ne peut utiliser que certaines fonctions prédéfinies, et il ne peut pas contrôler directement le GPU. * 2 ème niveau: Utilisation de l'api CUDA Driver bas niveau : L'API CUDA Driver offre un meilleur niveau de contrôle de GPU lors de la programmation. Elle offre l'avantage de pouvoir charger des portions de code en tant que fichiers assemblages -code ptx- ou binaires -fichier cubin- qui sont générés par le compilateur NVCC (3). En contrepartie, cette API rend la programmation plus contraignante puisque cette dernière est difficile à déboguer et nécessite beaucoup plus de ligne de code à écrire pour exprimer la même chose qu avec l API CUDA de 3 ème niveau. * 3 ème niveau: Utilisation de l'api CUDA Runtime haut niveau Cette interface a été créée après l API CUDA Driver. Chaque appel à une fonction du runtime est décomposé en instructions plus basiques gérées par l API Driver. L'API Runtime est considérée de haut niveau, car elle offre des fonctions plus pratiques pour l'initialisation et la gestion du contexte. Par la suite, seules les fonctions appartenant à l'api Runtime seront présentées. En effet, l algorithme choisi pour effectuer la simulation tout en optimisant le temps d'exécution s'appuie sur l API Runtime. Le choix s est porté naturellement vers cette API pour sa prise en main plus facile à partir du langage C. De plus, la compréhension de l algorithme par des personnes n ayant jamais manipulé CUDA sera plus aisée. (3)NVCC: le compilateur fournit par NVIDIA spécialement pour CUDA. Année Scolaire 2009/

18 3.4 Runtime API Le Runtime CUDA joue le rôle d'intermédiaire entre le développeur et le driver qui facilite le développement en masquant certains détails. Comme nous l'avons mentionné précédemment, cette API contient quelques extensions au langage C. Pour ne pas rentrer dans les détails concernant ces extensions, seules les principales fonctions vont être présentées. Certaines fonctions permettent d'accéder aux propriétés des cartes graphiques installées sur l'ordinateur. Le programme suivant permet de récupérer les caractéristiques telles que : la taille de la mémoire globale, la taille de la mémoire partagée, le nombre maximal de thread par bloc... et cela pour chaque carte graphique. int devicecount; cudagetdevicecount(&devicecount); int device; for (device = 0; device < devicecount; ++device) cudadeviceprop deviceprop; cudagetdeviceproperties(&deviceprop,device); A partir de ce code, on récupère le nombre total des GPUs existant sur la machine à l aide de la fonction cudagetdevicecount(). Ensuite, on affiche les propriétés avec la fonction cudagetdeviceproperties () pour chacunes des cartes graphiques sélectionnées. Cette API possède aussi la fonction cudasetdevice() qui permet de choisir le GPU à relier avec le CPU, et sur lequel nous allons exécuter les kernels. Concernant la mémoire du GPU, elle est manipulée et gérée à l'aide des fonctions suivantes: - cudamalloc (): alloue la mémoire - cudafree (): libère la mémoire - cudamemcpy (): copie la mémoire La fonction cudamemcpy () permet de copier la mémoire du CPU vers le GPU à l aide du paramètre cudamemcpyhosttodevice et réciproquement avec cudamemcpydevicetohost. Année Scolaire 2009/

19 3.5 Mode émulation L architecture CUDA ne possède pas de débogueur. Le mode émulation permet donc de déboguer un programme CUDA pour résoudre certains problèmes de programmation. En effet, l option de compilation -deviceemu force la compilation du code sur le CPU pour pouvoir déboguer le programme. L option deviceemu peut être utilisé directement lors de l exécution du programme, comme dans l exemple suivant : nvcc -deviceemu -o run prog.cu, ou en précisant l option dans un fichier makefile : CUUOPT=-deviceemu. L utilisation de ce mode permet d utiliser les moyens habituels pour déboguer un programme. De plus, toutes les variables sont stockées dans la mémoire du CPU. De ce fait, il est possible d afficher les résultats et les erreurs de calcul du programme. Pour lancer une application CUDA en mode émulation, il faut d abord vérifier les paramètres suivants : - Le CPU doit être capable de faire tourner jusqu au nombre maximum de threads par bloc défini dans un fichier de configuration. - Le CPU doit posséder suffisamment de ressources mémoires pour chaque thread, c'est-à-dire 256 KB par thread. 4 Méthode de Monte Carlo ''MC'' La méthode de MC est une approche statistique dédiée aux simulations des systèmes complexes dans différents domaines comme le domaine mathématique, statistique ou physique. Cette méthode est fondée sur la répétition aléatoire d'échantillonnage pour résoudre des problèmes basés sur des calculs comme des problèmes de type numérique (calcul des intégrales) ou de nature probabiliste (calcul des risques), selon les trois caractéristiques suivantes: 1. Générateur de nombre aléatoire uniformément distribué entre 0 et Simulation de valeurs aléatoires avec des fonctions de distribution plus complexes à partir de (1). 3. Calculs de quantités à partir de plusieurs réalisations indépendantes de (2) Année Scolaire 2009/

20 L étude du transfert radiatif dans un nuage consiste à étudier la propagation du photon tout au long de son trajet jusqu à ce qu il soit absorbé ou sorti du milieu. Pour cela, on considère cette propagation comme une chaîne de Markov (5) de collision d un photon dans un milieu. Le photon va être diffusé ou absorbé selon les propriétés du milieu. On a décidé de mettre en place la méthode Monte Carlo car d une part, le code existant MCX utilise cette méthode et d autre part, cette dernière permet donc de simuler cette chaîne de Markov en estimant statistiquement les propriétés désirées. (5) Chaîne de Markov: est un processus aléatoire (stochastique) [X(t),t>0] portant sur un nombre fini ou comptable d états, la distribution de X(t n) ne dépend que de X((t n-1), de manière simplifiée, la prédiction du futur, sachant le présent, n'est pas rendue plus précise par des éléments d'information supplémentaires concernant le passé. Année Scolaire 2009/

21 PARTIE III - PRÉSENTATION DE L'EXISTANT 1 Présentation générale de MCX MCX (Monte Carlo extreme) est un logiciel développé par le docteur Qianqian Fang au laboratoire PMI «The Photon Migration Imaging», spécialisé dans le domaine de l'imagerie biomédicale et plus particulièrement, dans l'exploration des nouvelles études du cerveau et de la poitrine de façon non invasive et sans utiliser des nuisibles. Le PMI travaille à développer la technologie d'imagerie optique, ainsi que de l'appliquer à un large éventail de la science fondamentale et les études cliniques. 1.1 Historique * 21 Octobre 2009 : sortie de la 1ère version de MCX appelée ''MCX 0.2 Beta'' sous Linux pour 32 et 64 bits, et sous Windows et Mac, accompagnée d un article décrivant le travail effectué. * 22 Décembre 2009: deux mois après la sortie de la 1ère version, la dernière version ''MCX 0.2 Final'' sort accompagnée des fichiers binaires ainsi que le code source du logiciel. 1.2 Objectif Le logiciel Monte Carlo extreme ''MCX'' est destiné à l'industrie de la santé, particulièrement à l'imagerie médicale dont l objectif principal est d'offrir une meilleure compréhension de la manière dont fonctionne le cerveau. De plus, il permet d'ouvrir de nouvelles perspectives de recherche et de servir de base à d éventuelles évolutions pour l'amélioration du dépistage et la détection d'une variété de pathologies. La vocation principale de MCX est la modélisation de la propagation des photons dans des milieux complexes en 3D (exemple: le cerveau). En profitant de la puissance de la carte graphique pour les calculs, ce logiciel permet donc d'exécuter un code de simulation basé sur la méthode de Monte Carlo(MC) d'une vitesse typiquement 300 fois plus rapide qu une exécution sur le CPU. Année Scolaire 2009/

22 L intérêt de ce logiciel est de pouvoir étudier les caractéristiques suivantes: * milieu complexe en 3D * la réflexion dans les bords du milieu * résolution de la propagation des photons en fonction du temps * optimisation des générateurs de nombre aléatoire * calcul de la fluence (6) 2 Description détaillée du MCX Le code MCX est une application écrite en C à l'aide d'une bibliothèque spécialisée dans la programmation parallèle appelée CUDA. Cette application offre la possibilité d étudier la diffusion d'un nombre inconnu de photons, dans un milieu en trois dimensions. Ce milieu est constitué de voxels contenant ses propriétés optiques. Un voxel est un pixel en trois dimensions. Chaque voxel du milieu contient le coefficient de diffusion σs, le coefficient d absorption σa, l indice de réfraction (7) n et l anisotropie (8) donné par le paramètre d asymétrie. 2.1 Organisation du code MCX (6) Fluence : intégrale d une densité de flux de particule sur un intervalle de temps donné. (7) Indice de réfraction: le facteur de réduction de la vitesse de la lumière dans le milieu. (8) Anisotropie: est la propriété d'être dépendant de la direction, dans cette étude il caractérise l effet de structure du milieu dans la façon de dévier les photons. Année Scolaire 2009/

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par

Plus en détail

UEO11 Cours/TDn 2 Algorithmique : bases - 2007-2008. 3- Algorithmique...1 3.1 Définition : algorithmique...1. Critère algorithmique élémentaire

UEO11 Cours/TDn 2 Algorithmique : bases - 2007-2008. 3- Algorithmique...1 3.1 Définition : algorithmique...1. Critère algorithmique élémentaire UEO11 Cours/TDn 2 Algorithmique : bases - 2007-2008 Table des matières 3- Algorithmique...1 3.1 Définition : algorithmique...1 Critère algorithmique élémentaire...1 3.2 De l algorithme au programme...2

Plus en détail

L'apport de la physique au diagnostic médical

L'apport de la physique au diagnostic médical L'apport de la physique au diagnostic médical L'application des découvertes de la physique à l'exploration du corps humain fournit aux médecins des informations essentielles pour leurs diagnostics. Ils

Plus en détail

Equation LIDAR : exp 2 Equation RADAR :

Equation LIDAR : exp 2 Equation RADAR : Contexte scientifique Systèmes LIDAR/RADAR Equation LIDAR : exp Equation RADAR : p (r) : puissance rétrodiffusée r : altitude ou profondeur. C : constante instrumentale. β : coefficient de rétrodiffusion

Plus en détail

L énergie solaire DOSSIER RESSOURCE

L énergie solaire DOSSIER RESSOURCE DOSSIER RESSOURCE SOMMAIRE 1. Pourquoi les énergies renouvelables?... 3 2. L'énergie solaire... 4 3. Principe de fonctionnement du panneau solaire... 5 4. Pourquoi orienter les panneaux solaires?... 6-2

Plus en détail

Chapitre 18 : Transmettre et stocker de l information

Chapitre 18 : Transmettre et stocker de l information Chapitre 18 : Transmettre et stocker de l information Connaissances et compétences : - Identifier les éléments d une chaîne de transmission d informations. - Recueillir et exploiter des informations concernant

Plus en détail

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes.

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes. Introduction L'objectif de mon TIPE est la reconnaissance de sons ou de notes de musique à l'aide d'un réseau de neurones. Ce réseau doit être capable d'apprendre à distinguer les exemples présentés puis

Plus en détail

1) Explications (Expert) :

1) Explications (Expert) : 1) Explications (Expert) : Mesures expérimentales : Dans nos conditions d expérience, nous avons obtenu les résultats suivants : Les dimensions des récipients sont : 1) bocal vide : épaisseur de verre

Plus en détail

Guide de l informatique Fichiers et dossiers

Guide de l informatique Fichiers et dossiers Guide de l informatique Fichiers et dossiers Pour mieux comprendre le fonctionnement d'un PC, il est indispensable de bien cerner les notions de fichiers et de dossiers. A dire vrai, l'ensemble des données

Plus en détail

Comprendre l Univers grâce aux messages de la lumière

Comprendre l Univers grâce aux messages de la lumière Seconde / P4 Comprendre l Univers grâce aux messages de la lumière 1/ EXPLORATION DE L UNIVERS Dans notre environnement quotidien, les dimensions, les distances sont à l échelle humaine : quelques mètres,

Plus en détail

PHYSIQUE Discipline fondamentale

PHYSIQUE Discipline fondamentale Examen suisse de maturité Directives 2003-2006 DS.11 Physique DF PHYSIQUE Discipline fondamentale Par l'étude de la physique en discipline fondamentale, le candidat comprend des phénomènes naturels et

Plus en détail

SIGNAUX PERIODIQUES (activités de découvertes et acquis du collège)

SIGNAUX PERIODIQUES (activités de découvertes et acquis du collège) Thème SANTE SIGNAUX PERIODIQUES (activités de découvertes et acquis du collège) Acquis du collège : une tension alternative périodique (comme celle du secteur) est une tension qui se répète à l'identique

Plus en détail

Projet Active Object

Projet Active Object Projet Active Object TAO Livrable de conception et validation Romain GAIDIER Enseignant : M. Noël PLOUZEAU, ISTIC / IRISA Pierre-François LEFRANC Master 2 Informatique parcours MIAGE Méthodes Informatiques

Plus en détail

EXERCICE 2 : SUIVI CINETIQUE D UNE TRANSFORMATION PAR SPECTROPHOTOMETRIE (6 points)

EXERCICE 2 : SUIVI CINETIQUE D UNE TRANSFORMATION PAR SPECTROPHOTOMETRIE (6 points) BAC S 2011 LIBAN http://labolycee.org EXERCICE 2 : SUIVI CINETIQUE D UNE TRANSFORMATION PAR SPECTROPHOTOMETRIE (6 points) Les parties A et B sont indépendantes. A : Étude du fonctionnement d un spectrophotomètre

Plus en détail

Annexe : La Programmation Informatique

Annexe : La Programmation Informatique GLOSSAIRE Table des matières La Programmation...2 Les langages de programmation...2 Java...2 La programmation orientée objet...2 Classe et Objet...3 API et Bibliothèque Logicielle...3 Environnement de

Plus en détail

G.P. DNS02 Septembre 2012. Réfraction...1 I.Préliminaires...1 II.Première partie...1 III.Deuxième partie...3. Réfraction

G.P. DNS02 Septembre 2012. Réfraction...1 I.Préliminaires...1 II.Première partie...1 III.Deuxième partie...3. Réfraction DNS Sujet Réfraction...1 I.Préliminaires...1 II.Première partie...1 III.Deuxième partie...3 Réfraction I. Préliminaires 1. Rappeler la valeur et l'unité de la perméabilité magnétique du vide µ 0. Donner

Plus en détail

Module HVAC - fonctionnalités

Module HVAC - fonctionnalités Module HVAC - fonctionnalités Modèle de radiation : DO = Discrete Ordinates On peut considérer l échauffement de solides semi transparents causé par le rayonnement absorbé par le solide. On peut également

Plus en détail

CHAPITRE VIII : Les circuits avec résistances ohmiques

CHAPITRE VIII : Les circuits avec résistances ohmiques CHAPITRE VIII : Les circuits avec résistances ohmiques VIII. 1 Ce chapitre porte sur les courants et les différences de potentiel dans les circuits. VIII.1 : Les résistances en série et en parallèle On

Plus en détail

Pourquoi étudier l aérosol atmosphérique?

Pourquoi étudier l aérosol atmosphérique? Pourquoi étudier l aérosol atmosphérique? Impact Climatique Impact sanitaire Les particules atmosphériques sont avant tout étudiées pour leurs impacts sur le climat et sur la santé humaine. 39 Réchauffement

Plus en détail

Introduction à CUDA. gael.guennebaud@inria.fr

Introduction à CUDA. gael.guennebaud@inria.fr 36 Introduction à CUDA gael.guennebaud@inria.fr 38 Comment programmer les GPU? Notion de kernel exemple (n produits scalaires): T ci =ai b ( ai, b : vecteurs 3D, ci for(int i=0;i

Plus en détail

Algorithmes évolutionnaires sur. et GPU. Introduction : GPU et puissance calculatoire Principe du GPU : le pipeline

Algorithmes évolutionnaires sur. et GPU. Introduction : GPU et puissance calculatoire Principe du GPU : le pipeline Algorithmes évolutionnaires et GPU Introduction : GPU et puissance calculatoire Principe du GPU : le pipeline graphique Introduction au parallélisme de données Exemple de simulation Les langages de haut-niveau

Plus en détail

Chapitre 1 : Introduction aux bases de données

Chapitre 1 : Introduction aux bases de données Chapitre 1 : Introduction aux bases de données Les Bases de Données occupent aujourd'hui une place de plus en plus importante dans les systèmes informatiques. Les Systèmes de Gestion de Bases de Données

Plus en détail

- I - Fonctionnement d'un détecteur γ de scintillation

- I - Fonctionnement d'un détecteur γ de scintillation U t i l i s a t i o n d u n s c i n t i l l a t e u r N a I M e s u r e d e c o e ffi c i e n t s d a t t é n u a t i o n Objectifs : Le but de ce TP est d étudier les performances d un scintillateur pour

Plus en détail

Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre. Partie I : Introduction

Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre. Partie I : Introduction Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre Partie I : Introduction Plan de la première partie Quelques définitions Caractéristiques communes des applications temps-réel Exemples d

Plus en détail

TD1 PROPAGATION DANS UN MILIEU PRESENTANT UN GRADIENT D'INDICE

TD1 PROPAGATION DANS UN MILIEU PRESENTANT UN GRADIENT D'INDICE TD1 PROPAGATION DANS UN MILIEU PRESENTANT UN GRADIENT D'INDICE Exercice en classe EXERCICE 1 : La fibre à gradient d indice On considère la propagation d une onde électromagnétique dans un milieu diélectrique

Plus en détail

modélisation solide et dessin technique

modélisation solide et dessin technique CHAPITRE 1 modélisation solide et dessin technique Les sciences graphiques regroupent un ensemble de techniques graphiques utilisées quotidiennement par les ingénieurs pour exprimer des idées, concevoir

Plus en détail

CHAMPION Matthieu Modèles de Marché en Visual Basic ESILV S04 S6. Sommaire... 1. Introduction... 2

CHAMPION Matthieu Modèles de Marché en Visual Basic ESILV S04 S6. Sommaire... 1. Introduction... 2 Sommaire Sommaire... 1 Introduction... 2 1 Trois différentes techniques de pricing... 3 1.1 Le modèle de Cox Ross Rubinstein... 3 1.2 Le modèle de Black & Scholes... 8 1.3 Méthode de Monte Carlo.... 1

Plus en détail

Éclairage naturel L5C 2009/2010. Aurore BONNET

Éclairage naturel L5C 2009/2010. Aurore BONNET Éclairage naturel L5C 2009/2010 Aurore BONNET Introduction : Les 2 aspects de l éclairage naturel : Introduction : Les 2 aspects de l éclairage naturel : l ensoleillement et l éclairage diffus L ENSOLEILLEMENT

Plus en détail

Synthèse OBJECTIF DE L ÉTUDE

Synthèse OBJECTIF DE L ÉTUDE "Bilan énergétique et des émissions de gaz à effet de serre tout au long du cycle de vie du gaz naturel et du mazout comme combustible pour le chauffage domestique" Synthèse I.1. OBJECTIF DE L ÉTUDE Il

Plus en détail

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE» MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE» Du cours Modélisation Semi -Formelle de Système d Information Du Professeur Jean-Pierre GIRAUDIN Décembre. 2002 1 Table de matière Partie 1...2 1.1

Plus en détail

Sillage Météo. Notion de sillage

Sillage Météo. Notion de sillage Sillage Météo Les représentations météorologiques sous forme d animation satellites image par image sont intéressantes. Il est dommage que les données ainsi visualisées ne soient pas utilisées pour une

Plus en détail

Introduction à MATLAB R

Introduction à MATLAB R Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d

Plus en détail

TPE : La voiture solaire. Présentation de Matthys Frédéric, Soraya Himour et Sandra Thorez.

TPE : La voiture solaire. Présentation de Matthys Frédéric, Soraya Himour et Sandra Thorez. TPE : La voiture solaire Présentation de Matthys Frédéric, Soraya Himour et Sandra Thorez. Sommaire :.1) Le capteur solaire :.2) La voiture solaire :.3) Variation de température et la vitesse : Problématique

Plus en détail

Programmation C. Apprendre à développer des programmes simples dans le langage C

Programmation C. Apprendre à développer des programmes simples dans le langage C Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités

Plus en détail

I.1. OBJECTIF DE L ETUDE I.2. CHAMP DE L'ETUDE

I.1. OBJECTIF DE L ETUDE I.2. CHAMP DE L'ETUDE "Bilan énergétique et des émissions de gaz à effet de serre tout au long du cycle de vie du gaz naturel et du mazout comme combustible pour le chauffage domestique" Synthèse I.1. OBJECTIF DE L ETUDE Il

Plus en détail

Introduction aux Systèmes Distribués. Introduction générale

Introduction aux Systèmes Distribués. Introduction générale Introduction aux Systèmes Distribués Licence Informatique 3 ème année Introduction générale Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Plan

Plus en détail

L ' E N V I R O N N E M E N T À T R A V E R S L A S I M U L A T I O N N U M É R I Q U E : D E L ' I N G É N I E R I E D U B Â T I M E N T

L ' E N V I R O N N E M E N T À T R A V E R S L A S I M U L A T I O N N U M É R I Q U E : D E L ' I N G É N I E R I E D U B Â T I M E N T L ' E N V I R O N N E M E N T À T R A V E R S L A S I M U L A T I O N N U M É R I Q U E : U N E N O U V E L L E P R A T I Q U E D E L ' I N G É N I E R I E D U B Â T I M E N T Pour les bâtiments et à l'échelle

Plus en détail

Logiciel EV3 LEGO MINDSTORMS Education

Logiciel EV3 LEGO MINDSTORMS Education Robot éducateur : LEGO Education a le plaisir de vous présenter Robot éducateur, une sélection d'activités pédagogiques vous permettant de prendre en main votre EV3 LEGO MINDSTORMS Education de façon structurée

Plus en détail

. Plan du cours. . Architecture: Fermi (2010-12), Kepler (12-?)

. Plan du cours. . Architecture: Fermi (2010-12), Kepler (12-?) Plan du cours Vision mate riel: architecture cartes graphiques NVIDIA INF 560 Calcul Paralle le et Distribue Cours 3 Vision logiciel: l abstraction logique de l architecture propose e par le langage CUDA

Plus en détail

IFT630 Processus concurrents et parallélisme. Projet final Rapport. Présenté à Gabriel Girard

IFT630 Processus concurrents et parallélisme. Projet final Rapport. Présenté à Gabriel Girard IFT630 Processus concurrents et parallélisme Projet final Rapport Présenté à Gabriel Girard par Alexandre Tremblay (06 805 200) Pierre-François Laquerre (05 729 544) 15 avril 2008 Introduction Après plusieurs

Plus en détail

t 100. = 8 ; le pourcentage de réduction est : 8 % 1 t Le pourcentage d'évolution (appelé aussi taux d'évolution) est le nombre :

t 100. = 8 ; le pourcentage de réduction est : 8 % 1 t Le pourcentage d'évolution (appelé aussi taux d'évolution) est le nombre : Terminale STSS 2 012 2 013 Pourcentages Synthèse 1) Définition : Calculer t % d'un nombre, c'est multiplier ce nombre par t 100. 2) Exemples de calcul : a) Calcul d un pourcentage : Un article coûtant

Plus en détail

CHAPITRE I Modélisation d un panneau solaire 2012

CHAPITRE I Modélisation d un panneau solaire 2012 1 I.Généralités sur les cellules photovoltaïques I.1.Introduction : Les énergies renouvelables sont des énergies à ressource illimitée. Les énergies renouvelables regroupent un certain nombre de filières

Plus en détail

LES NOUVEAUX PROGRAMMES DE

LES NOUVEAUX PROGRAMMES DE LES NOUVEAUX PROGRAMMES DE MATHÉMATIQUES EN STS M A T H S S T S Animation académique Taverny lundi 24 mars 2014 et Savigny sur Orge vendredi 28 mars 2014 PREMIERS REPÈRES Les programmes de STS ont été

Plus en détail

QCM systèmes d exploitation (Quarante questions)

QCM systèmes d exploitation (Quarante questions) QCM systèmes d exploitation (Quarante questions) QUIZZ OS N 1 (10 questions avec réponses) Question 1: Aux origines de l informatique, l'interface utilisateur des systèmes d exploitations était composée

Plus en détail

Calcul multi GPU et optimisation combinatoire

Calcul multi GPU et optimisation combinatoire Année universitaire 2010 2011 Master recherche EEA Spécialité : SAID Systèmes Automatiques, Informatiques et Décisionnels Parcours : Systèmes Automatiques Calcul multi GPU et optimisation combinatoire

Plus en détail

Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN

Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN Nombres, mesures et incertitudes en sciences physiques et chimiques. Groupe des Sciences physiques et chimiques de l IGEN Table des matières. Introduction....3 Mesures et incertitudes en sciences physiques

Plus en détail

TP 1 : prise en main de C#. Net sous Visual Studio 2010

TP 1 : prise en main de C#. Net sous Visual Studio 2010 Année universitaire : 2014-2015 Responsable : Sonia LAJMI Niveau Matière 2 ème année MPIM Management des Contenus Multimédia TP 1 : prise en main de C#. Net sous Visual Studio 2010 Dans ce tout premier

Plus en détail

INSTALLATION ET CONFIGURATION POUR LA PROGRAMMATION

INSTALLATION ET CONFIGURATION POUR LA PROGRAMMATION INSTALLATION ET CONFIGURATION POUR LA PROGRAMMATION PARALLELES SOUS WINDOWS I. PREPARATION DE L ENVIRONNEMENT Tous d abord il va vous falloir télécharger quelques logiciels afin de pouvoir commencer à

Plus en détail

Métriques de performance pour les algorithmes et programmes parallèles

Métriques de performance pour les algorithmes et programmes parallèles Métriques de performance pour les algorithmes et programmes parallèles 11 18 nov. 2002 Cette section est basée tout d abord sur la référence suivante (manuel suggéré mais non obligatoire) : R. Miller and

Plus en détail

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental

Plus en détail

Réunion de lancement du projet LEFE DEPHY2

Réunion de lancement du projet LEFE DEPHY2 Réunion de lancement du projet LEFE DEPHY2 Développement et Evaluation des PHYsiques des modèles atmosphériques BILAN 45 participants 25 CNRM, 12 LMD, 4 LGGE, 2LA, 1 LSCE, 1 GET 8-9-10 septembre 2014 Observatoire

Plus en détail

Analyse et programmation 1

Analyse et programmation 1 Analyse et programmation Aperçu du fonctionnement de l ordinateur Fonctionnement de l ordinateur Codage de l information Bus d échange d information CPU Exécution d un programme par la CPU Gestion des

Plus en détail

Ludovic Grossard. Chapitre VI Polarisation de la lumière. Chapitre VI. Département Mesures Physiques, IUT du Limousin Université de Limoges

Ludovic Grossard. Chapitre VI Polarisation de la lumière. Chapitre VI. Département Mesures Physiques, IUT du Limousin Université de Limoges Chapitre VI Polarisation de la lumière Ludovic Grossard Département Mesures Physiques, IUT du Limousin Université de Limoges 1 Dénition 2 Types de polarisation 3 Polariseurs / analyseurs 4 Les lames de

Plus en détail

trigonométrie équations mécanique homographie vision pas ordinateur

trigonométrie équations mécanique homographie vision pas ordinateur robotique algorithmes simulation modélisation vecteurs géométrie analytique informatique cinématique inverse produit scalaire Rapport de stage trigonométrie équations mécanique Laboratoire Informatique

Plus en détail

STATION MÉTÉO «DAVIS VANTAGE PRO2» DOSSIER DE PRÉSENTATION

STATION MÉTÉO «DAVIS VANTAGE PRO2» DOSSIER DE PRÉSENTATION «DAVIS VANTAGE PRO2» DOSSIER DE PRÉSENTATION Pascal BARONI JeanLuc PADIOLLEAU Version du 19 septembre 2011 1ère STI2D spécialité SIN Lycée Jacques de Vaucanson 1 Rue Védrine 37000 TOURS 1. PRÉSENTATION

Plus en détail

Complément d information concernant la fiche de concordance

Complément d information concernant la fiche de concordance Sommaire SAMEDI 0 DÉCEMBRE 20 Vous trouverez dans ce dossier les documents correspondants à ce que nous allons travailler aujourd hui : La fiche de concordance pour le DAEU ; Page 2 Un rappel de cours

Plus en détail

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Leçon 11 PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Dans cette leçon, nous retrouvons le problème d ordonnancement déjà vu mais en ajoutant la prise en compte de contraintes portant sur les ressources.

Plus en détail

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation

Plus en détail

Cours 3 : L'ordinateur

Cours 3 : L'ordinateur Cours 3 : L'ordinateur Abdelkrim Zehioua 2éme année Licence Gestion Faculté des sciences Économiques et sciences de Gestion Université A, Mehri - Constantine 2 Plan du cours 1.Définitions de l'ordinateur

Plus en détail

DUT. Informatique, orientation Imagerie Numérique. Domaine : Sciences, Technologies, Santé. Mention : Informatique

DUT. Informatique, orientation Imagerie Numérique. Domaine : Sciences, Technologies, Santé. Mention : Informatique DUT Informatique, orientation Imagerie Numérique Domaine : Sciences, Technologies, Santé Mention : Informatique Organisation : Institut Universitaire de Technologie Lieu de formation : Le Puy en Velay

Plus en détail

Informatique légale : FPGA vs. GPU

Informatique légale : FPGA vs. GPU Informatique légale : FPGA vs. GPU Sylvain Collange, Yoginder S. Dandass, Marc Daumas et David Defour 03/06/2008 Problématiques Analyse de disque dur Recherche de contenu illégal connu Y compris dans des

Plus en détail

Etude statistique et signatures angulaires caractéristiques de nuages hétérogènes observés à partir de POLDER/PARASOL

Etude statistique et signatures angulaires caractéristiques de nuages hétérogènes observés à partir de POLDER/PARASOL UNIVERSITÉ DES SCIENCES ET TECHNOLOGIES DE LILLE 1 RAPPORT DE STAGE DE WACHEUX LUCILE Etude statistique et signatures angulaires caractéristiques de nuages hétérogènes observés à partir de POLDER/PARASOL

Plus en détail

Matériel & Logiciels (Hardware & Software)

Matériel & Logiciels (Hardware & Software) CHAPITRE 2 HARDWARE & SOFTWARE P. 1 Chapitre 2 Matériel & Logiciels (Hardware & Software) 2.1 Matériel (Hardware) 2.1.1 Présentation de l'ordinateur Un ordinateur est un ensemble de circuits électronique

Plus en détail

BD Avancées TRAVAUX DIRIGÉS. UFR Sciences et Techniques. IUP Blois Master SIR 1 année

BD Avancées TRAVAUX DIRIGÉS. UFR Sciences et Techniques. IUP Blois Master SIR 1 année UFR Sciences et Techniques IUP Blois Master SIR 1 année BD Avancées TRAVAUX DIRIGÉS Enseignant Jean-Yves ANTOINE (Jean-Yves.Antoine AT univ-tours.fr) Sécurité des données CONTRÔLE DES ACCES CONCURRENTS

Plus en détail

Interface PC Vivago Ultra. Pro. Guide d'utilisation

Interface PC Vivago Ultra. Pro. Guide d'utilisation Interface PC Vivago Ultra Pro Guide d'utilisation Version 1.03 Configuration de l'interface PC Vivago Ultra Configuration requise Avant d'installer Vivago Ultra sur votre ordinateur assurez-vous que celui-ci

Plus en détail

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux. UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases

Plus en détail

Codage MPEG-4 de dessins animés

Codage MPEG-4 de dessins animés Codage MPEG-4 de dessins animés Jean-Claude Moissinac Cyril Concolato Jean-Claude Dufourd Ecole Nationale Supérieure des Télécommunications 46 rue Barrault 75013 Paris cyril.concolato@enst.fr, dufourd@enst.fr,

Plus en détail

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, tableaux, opérateurs Entrées sorties de base Structures de

Plus en détail

TECHNOLOGIE DE L OPTIQUE GUIDEE

TECHNOLOGIE DE L OPTIQUE GUIDEE REPUBLIQUE DU CAMEROUN Paix - Travail Patrie --------------------- UNIVERSITE DE YAOUNDE I ---------------------- ECOLE NATIONALE SUPERIEURE POLYTECHNIQUE ---------------------- REPUBLIC OF CAMEROUN Peace

Plus en détail

Leica Application Suite

Leica Application Suite Leica Application Suite Macro Editor et Macro Runner (Éditeur de macros et Exécuteur de macros) Personnalisées et automatisées 2 Les instructions peuvent être momentanément suspendues» de manière optionnelle

Plus en détail

ESTIMATION DE LA HAUTEUR D UN LIT DE STOCKAGE DE L ENERGIE THERMIQUE UTILISANT UN MATERIAU A CHANGEMENT DE PHASE

ESTIMATION DE LA HAUTEUR D UN LIT DE STOCKAGE DE L ENERGIE THERMIQUE UTILISANT UN MATERIAU A CHANGEMENT DE PHASE 0-06 Novembre, 00, Sousse,Tunisie ESTIMATION DE LA HAUTEUR D UN LIT DE STOCKAGE DE L ENERGIE THERMIQUE UTILISANT UN MATERIAU A CHANGEMENT DE PHASE A. Benmansour A. Benzerdjeb Laboratoire de mécanique appliquée,

Plus en détail

Conditions : stage indemnisé, aide au logement possible, transport CEA en Ile-de-France gratuit.

Conditions : stage indemnisé, aide au logement possible, transport CEA en Ile-de-France gratuit. Proposition de stage de BAC+4 ou BAC+5 Pro ou Recherche Etude comparative des outils de vérification d'algorithmes parallèles Logiciels (LSL), localisé à Palaiseau (Essonne), développe les outils d'aide

Plus en détail

Tutorat C/Unix : Un Rapido Client/Serveur

Tutorat C/Unix : Un Rapido Client/Serveur Tutorat C/Unix : Un Rapido Client/Serveur Nouredine Melab 1 Description générale du projet 1.1 Objectif L'objectif du projet est de concevoir et de réaliser un jeu de hasard dénommé Rapido. Un serveur

Plus en détail

www.boutiquesolaire.com

www.boutiquesolaire.com INFORMATIONS SUR LES PRODUITS 03 / 2013 POWERBANKS CHARGEURS SOLAIRES Powerbanks Chargeurs solaires Cellules solaires pour Powerbanks CELLULES SOLAIRES POUR POWERBANKS www.boutiquesolaire.com CONTENU Powerbanks

Plus en détail

Les ondes au service du diagnostic médical

Les ondes au service du diagnostic médical Chapitre 12 Les ondes au service du diagnostic médical A la fin de ce chapitre Notions et contenus SAV APP ANA VAL REA Je maitrise Je ne maitrise pas Signaux périodiques : période, fréquence, tension maximale,

Plus en détail

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique DOMAINE P3.C3.D1. Pratiquer une démarche scientifique et technologique, résoudre des

Plus en détail

Rayonnements dans l univers

Rayonnements dans l univers Terminale S Rayonnements dans l univers Notions et contenu Rayonnements dans l Univers Absorption de rayonnements par l atmosphère terrestre. Etude de documents Compétences exigibles Extraire et exploiter

Plus en détail

Télécom Nancy Année 2013-2014

Télécom Nancy Année 2013-2014 Télécom Nancy Année 2013-2014 Rapport 1A Ajout du langage C dans la Programmer's Learning Machine GIANNINI Valentin Loria 615, rue du Jardin Botanique 54600, Villers-Lès-Nancy Maître de stage : QUINSON

Plus en détail

Simulation d un système d assurance automobile

Simulation d un système d assurance automobile Simulation d un système d assurance automobile DESSOUT / PLESEL / DACHI Plan 1 Introduction... 2 Méthodes et outils utilisés... 2.1 Chaines de Markov... 2.2 Méthode de Monte Carlo... 2.3 Méthode de rejet...

Plus en détail

CARPE. Documentation Informatique S E T R A. Version 2.00. Août 2013. CARPE (Documentation Informatique) 1

CARPE. Documentation Informatique S E T R A. Version 2.00. Août 2013. CARPE (Documentation Informatique) 1 CARPE (Documentation Informatique) 1 CARPE Version 2.00 Août 2013 Documentation Informatique S E T R A Programme CARPE - Manuel informatique de l'utilisateur CARPE (Documentation Informatique) 2 Table

Plus en détail

Baccalauréat technologique

Baccalauréat technologique Baccalauréat technologique Épreuve relative aux enseignements technologiques transversaux, épreuve de projet en enseignement spécifique à la spécialité et épreuve d'enseignement technologique en langue

Plus en détail

BUREAU D ETUDES INFORMATIQUE JOUEUR DE PUISSANCE 4

BUREAU D ETUDES INFORMATIQUE JOUEUR DE PUISSANCE 4 MIETLICKI Pascal 3 MIC C2 BUREAU D ETUDES INFORMATIQUE JOUEUR DE PUISSANCE 4 1. Mode Console... 2 2. Mode Graphique... 2 3. Architecture de notre logiciel... 3 4. Manuel d utilisation... 5 5. Aide au joueur...

Plus en détail

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007 Vision industrielle et télédétection - Détection d ellipses Guillaume Martinez 17 décembre 2007 1 Table des matières 1 Le projet 3 1.1 Objectif................................ 3 1.2 Les choix techniques.........................

Plus en détail

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION Classe de terminale de la série Sciences et Technologie du Management et de la Gestion Préambule Présentation Les technologies de l information

Plus en détail

Figure 1. Structure répartie

Figure 1. Structure répartie Chapitre I: Applications Réparties et Middleware 1. Définition d une application répartie Une application répartie est constituée d un ensemble de processus (d objets, d agents, d acteurs) s exécutant

Plus en détail

TP fibres optiques. Laser, Matériaux, Milieux Biologiques. Sécurité laser. Précautions à prendre

TP fibres optiques. Laser, Matériaux, Milieux Biologiques. Sécurité laser. Précautions à prendre TP fibres optiques Laser, Matériaux, Milieux Biologiques Sécurité laser ATTENTION : la diode laser à 810 nm est puissante (50 mw). Pour des raisons de sécurité et de sauvegarde de la santé des yeux, vous

Plus en détail

Chapitre 02. La lumière des étoiles. Exercices :

Chapitre 02. La lumière des étoiles. Exercices : Chapitre 02 La lumière des étoiles. I- Lumière monochromatique et lumière polychromatique. )- Expérience de Newton (642 727). 2)- Expérience avec la lumière émise par un Laser. 3)- Radiation et longueur

Plus en détail

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration Julien MATHEVET Alexandre BOISSY GSID 4 Rapport Load Balancing et migration Printemps 2001 SOMMAIRE INTRODUCTION... 3 SYNTHESE CONCERNANT LE LOAD BALANCING ET LA MIGRATION... 4 POURQUOI FAIRE DU LOAD BALANCING?...

Plus en détail

Retour d expérience, portage de code Promes dans le cadre de l appel à projets CAPS-GENCI

Retour d expérience, portage de code Promes dans le cadre de l appel à projets CAPS-GENCI , portage de code Promes dans le cadre de l appel à projets CAPS-GENCI PROMES (UPR 8521 CNRS) Université de Perpignan France 29 juin 2011 1 Contexte 2 3 4 Sommaire Contexte 1 Contexte 2 3 4 Laboratoire

Plus en détail

Introduction à Scilab

Introduction à Scilab Introduction à Scilab Nicolas Kielbasiewicz 21 juin 2007 Scilab est un logiciel gratuit développé à l INRIA (l Institut National de Recherche en Informatique et Automatique) sous Windows, Linux et Mac,

Plus en détail

Modèles à Événements Discrets. Réseaux de Petri Stochastiques

Modèles à Événements Discrets. Réseaux de Petri Stochastiques Modèles à Événements Discrets Réseaux de Petri Stochastiques Table des matières 1 Chaînes de Markov Définition formelle Idée générale Discrete Time Markov Chains Continuous Time Markov Chains Propriétés

Plus en détail

Chapitre 6 La lumière des étoiles Physique

Chapitre 6 La lumière des étoiles Physique Chapitre 6 La lumière des étoiles Physique Introduction : On ne peut ni aller sur les étoiles, ni envoyer directement des sondes pour les analyser, en revanche on les voit, ce qui signifie qu'on reçoit

Plus en détail

I. Introduction aux fonctions : les fonctions standards

I. Introduction aux fonctions : les fonctions standards Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons

Plus en détail

Table des matières. Table des matières

Table des matières. Table des matières Table des matières Table des matières Table des matières... 2 A propos de ce guide... 3 Assistance et information de contact... 4 Chapitre 1 Présentation du portail de Monitoring SolarEdge... 5 Chapitre

Plus en détail

Projet Storebox. Livre blanc Swisscom (Suisse) SA

Projet Storebox. Livre blanc Swisscom (Suisse) SA Projet Storebox Livre blanc Swisscom (Suisse) SA Sommaire Sommaire... 2 Introduction... 3 Différence entre synchronisation et sauvegarde... 3 Quelle méthode utiliser?... 3 Situation initiale... 4 Enjeux...

Plus en détail

Système d exploitation

Système d exploitation Chapitre 2 Système d exploitation 2.1 Définition et rôle Un ordinateur serait bien difficile à utiliser sans interface entre le matériel et l utilisateur. Une machine peut exécuter des programmes, mais

Plus en détail