Implantation des futures sur un système distribué par passage de messages

Ce mémoire présente une implantation de la création paresseuse de tâches desti- née à des systèmes multiprocesseurs à mémoire distribuée. Elle offre un sous-ensemble des fonctionnalités du Message-Passing Interface et permet de paralléliser certains problèmes qui se partitionnent difficilement de ma...

Full description

Bibliographic Details
Main Author: Lasalle-Ratelle, Jérémie
Other Authors: Feeley, Marc
Language:fr
Published: 2011
Subjects:
Online Access:http://hdl.handle.net/1866/4900
id ndltd-LACETR-oai-collectionscanada.gc.ca-QMU.1866-4900
record_format oai_dc
spelling ndltd-LACETR-oai-collectionscanada.gc.ca-QMU.1866-49002013-10-04T04:17:28ZImplantation des futures sur un système distribué par passage de messagesLasalle-Ratelle, JérémieLangages de programmation fonctionnelsFunctional programming languagesSchemeSchemeMultilispMultilispFuturesFuturesTraitement parallèleParallel computingTraitement distribuéDistributed computingCréation paresseuse de tâchesLazy task creationApplied Sciences - Computer Science / Sciences appliqués et technologie - Informatique (UMI : 0984)Ce mémoire présente une implantation de la création paresseuse de tâches desti- née à des systèmes multiprocesseurs à mémoire distribuée. Elle offre un sous-ensemble des fonctionnalités du Message-Passing Interface et permet de paralléliser certains problèmes qui se partitionnent difficilement de manière statique grâce à un système de partitionnement dynamique et de balancement de charge. Pour ce faire, il se base sur le langage Multilisp, un dialecte de Scheme orienté vers le traitement parallèle, et implante sur ce dernier une interface semblable à MPI permettant le calcul distribué multipro- cessus. Ce système offre un langage beaucoup plus riche et expressif que le C et réduit considérablement le travail nécessaire au programmeur pour pouvoir développer des programmes équivalents à ceux en MPI. Enfin, le partitionnement dynamique permet de concevoir des programmes qui seraient très complexes à réaliser sur MPI. Des tests ont été effectués sur un système local à 16 processeurs et une grappe à 16 processeurs et il offre de bonnes accélérations en comparaison à des programmes séquentiels équiva- lents ainsi que des performances acceptables par rapport à MPI. Ce mémoire démontre que l’usage des futures comme technique de partitionnement dynamique est faisable sur des multiprocesseurs à mémoire distribuée.This master’s thesis presents an implementation of lazy task creation for distributed memory multiprocessors. It offers a subset of Message-Passing Interface’s functionality and allows parallelization of some problems that are hard to statically partition thanks to its dynamic partitionning and load balancing system. It is based on Multilisp, a Scheme dialect for parallel computing, and implements an MPI like interface on top of it. It offers a richer and more expressive language than C and simplify the work needed to developp programs similar to those in MPI. Finally, dynamic partitioning allows some programs that would be very hard to develop in MPI. Tests were made on a 16 cpus computer and on a 16 cpus cluster. The system gets good accelerations when compared to equivalent sequential programs and acceptable performances when compared to MPI. It shows that it is possible to use futures as a dynamic partitioning method on distributed memory multiprocessors.Feeley, Marc2011-04-20T15:37:07ZNO_RESTRICTION2011-04-20T15:37:07Z2011-03-032010-08Thèse ou Mémoire numérique / Electronic Thesis or Dissertationhttp://hdl.handle.net/1866/4900fr
collection NDLTD
language fr
sources NDLTD
topic Langages de programmation fonctionnels
Functional programming languages
Scheme
Scheme
Multilisp
Multilisp
Futures
Futures
Traitement parallèle
Parallel computing
Traitement distribué
Distributed computing
Création paresseuse de tâches
Lazy task creation
Applied Sciences - Computer Science / Sciences appliqués et technologie - Informatique (UMI : 0984)
spellingShingle Langages de programmation fonctionnels
Functional programming languages
Scheme
Scheme
Multilisp
Multilisp
Futures
Futures
Traitement parallèle
Parallel computing
Traitement distribué
Distributed computing
Création paresseuse de tâches
Lazy task creation
Applied Sciences - Computer Science / Sciences appliqués et technologie - Informatique (UMI : 0984)
Lasalle-Ratelle, Jérémie
Implantation des futures sur un système distribué par passage de messages
description Ce mémoire présente une implantation de la création paresseuse de tâches desti- née à des systèmes multiprocesseurs à mémoire distribuée. Elle offre un sous-ensemble des fonctionnalités du Message-Passing Interface et permet de paralléliser certains problèmes qui se partitionnent difficilement de manière statique grâce à un système de partitionnement dynamique et de balancement de charge. Pour ce faire, il se base sur le langage Multilisp, un dialecte de Scheme orienté vers le traitement parallèle, et implante sur ce dernier une interface semblable à MPI permettant le calcul distribué multipro- cessus. Ce système offre un langage beaucoup plus riche et expressif que le C et réduit considérablement le travail nécessaire au programmeur pour pouvoir développer des programmes équivalents à ceux en MPI. Enfin, le partitionnement dynamique permet de concevoir des programmes qui seraient très complexes à réaliser sur MPI. Des tests ont été effectués sur un système local à 16 processeurs et une grappe à 16 processeurs et il offre de bonnes accélérations en comparaison à des programmes séquentiels équiva- lents ainsi que des performances acceptables par rapport à MPI. Ce mémoire démontre que l’usage des futures comme technique de partitionnement dynamique est faisable sur des multiprocesseurs à mémoire distribuée. === This master’s thesis presents an implementation of lazy task creation for distributed memory multiprocessors. It offers a subset of Message-Passing Interface’s functionality and allows parallelization of some problems that are hard to statically partition thanks to its dynamic partitionning and load balancing system. It is based on Multilisp, a Scheme dialect for parallel computing, and implements an MPI like interface on top of it. It offers a richer and more expressive language than C and simplify the work needed to developp programs similar to those in MPI. Finally, dynamic partitioning allows some programs that would be very hard to develop in MPI. Tests were made on a 16 cpus computer and on a 16 cpus cluster. The system gets good accelerations when compared to equivalent sequential programs and acceptable performances when compared to MPI. It shows that it is possible to use futures as a dynamic partitioning method on distributed memory multiprocessors.
author2 Feeley, Marc
author_facet Feeley, Marc
Lasalle-Ratelle, Jérémie
author Lasalle-Ratelle, Jérémie
author_sort Lasalle-Ratelle, Jérémie
title Implantation des futures sur un système distribué par passage de messages
title_short Implantation des futures sur un système distribué par passage de messages
title_full Implantation des futures sur un système distribué par passage de messages
title_fullStr Implantation des futures sur un système distribué par passage de messages
title_full_unstemmed Implantation des futures sur un système distribué par passage de messages
title_sort implantation des futures sur un système distribué par passage de messages
publishDate 2011
url http://hdl.handle.net/1866/4900
work_keys_str_mv AT lasalleratellejeremie implantationdesfuturessurunsystemedistribueparpassagedemessages
_version_ 1716602509538099200