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...
Main Author: | |
---|---|
Other Authors: | |
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 |