01.07.2013 Views

IPD TP1 - Enonce 2012-2013.pdf

IPD TP1 - Enonce 2012-2013.pdf

IPD TP1 - Enonce 2012-2013.pdf

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Travaux pratique d'Informatique Parallèle et Distribuée, UMONS/Polytech, TP 1 6<br />

e) Exercice 3<br />

Lire et comprendre le premier programme séquentiel fourni en annexe.<br />

Ce programme permet la création d'un tableau de particules positionnées aléatoirement dans un<br />

espace virtuel à 3 dimensions. Le nombre de particules est fourni en argument au lancement du<br />

programme. La distance entre les particules prises 2 à 2 est ensuite évaluée et le programme fournit le<br />

numéro des 2 particules les plus proches ainsi que la distance qui les sépare.<br />

Paralléliser ce programme en utilisant les directives OpenMP afin d'obtenir le meilleur temps<br />

d'exécution.<br />

Estimer le nombre minimum de particules en dessous duquel la parallélisation n'améliore pas les<br />

performances; introduire alors un test « if » sur ce nombre minimum conditionnant la création des<br />

threads.<br />

f) Exercice 4<br />

Lire et comprendre le second programme séquentiel fourni en annexe.<br />

Ce programme calcul le nombre de partitions de x en au plus y parties (noté d(x,y)), ce qui<br />

signifie qu'il calcule le nombre de combinaisons d'au plus y chiffres et dont la somme vaut x. Exemple :<br />

d(5,3) = {5} + {4+1} + {3+2} + {1+1+3} + {1+2+2} = 5<br />

Soit d'(x,y) le nombre de partitions qui comprennent exactement y chiffres (soit 2 dans notre<br />

exemple si y vaut 3), alors d(x,y) = d'(x,y) + d(x,y­1) (nombre de partitions de x en au plus y parties =<br />

nombre de partitions de x en exactement y parties + nombre de partitions de x en au plus (y­1) parties).<br />

Il a été démontré que d'(x,y) = d(x­y,y) 1 et ainsi :<br />

d(x,y) = d(x­y,y) + d(x,y­1)<br />

Paralléliser ce programme en utilisant les directives OpenMP afin d'optimiser le temps de calcul.<br />

1. S. Skiena, Implementing Discrete Mathematics: Combinatorics and Graph Theory<br />

with Mathematica. Reading, MA: Addison­Wesley, 1990, p.58<br />

UMONS/Polytech<br />

Pierre Manneback, Sébastien Frémal, Sébastien Noël <strong>2012</strong>­13

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!