Change search
CiteExportLink to record
Permanent link

Direct link
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Optimized Composition of Parallel Components on a Linux Cluster
Linköping University, Department of Computer and Information Science. Linköping University, The Institute of Technology.
2012 (English)Independent thesis Advanced level (degree of Master (Two Years)), 30 credits / 45 HE creditsStudent thesis
Abstract [en]

We develop a novel framework for optimized composition of explicitly parallel software components with different implementation variants given the problem size, data distribution scheme and processor group size on a Linux cluster. We consider two approaches (or two cases of the framework). 

In the first approach, dispatch tables are built using measurement data obtained offline by executions for some (sample) points in the ranges of the context properties. Inter-/extrapolation is then used to do actual variant-selection for a given execution context at run-time.

In the second approach, a cost function of each component variant is provided by the component writer for variant-selection. These cost functions can internally lookup measurements' tables built, either offline or at deployment time, for computation- and communication-specific primitives.

In both approaches, the call to an explicitly parallel software component (with different implementation variants) is made via a dispatcher instead of calling a variant directly.

As a case study, we apply both approaches on a parallel component for matrix multiplication with multiple implementation variants. We implemented our variants using Message Passing Interface (MPI). The results show the reduction in execution time for the optimally composed applications compared to applications with hard-coded composition. In addition, the results show the comparison of estimated and measured times for each variant using different data distributions, processor group and problem sizes.

Place, publisher, year, edition, pages
2012. , 66 p.
Keyword [en]
Software Composition, Parallel Components, Linux Cluster, Message Passing Interface, Implementations Variant, Data Distribution
National Category
Computer Systems
URN: urn:nbn:se:liu:diva-86204ISRN: LIU-IDA/LITH-EX-A—12/066—SEOAI: diva2:575732
Subject / course
Computer and information science at the Institute of Technology
2012-11-27, Donald Knuth, 13:00 (English)
Available from: 2012-12-11 Created: 2012-12-11 Last updated: 2012-12-11Bibliographically approved

Open Access in DiVA

fulltext(1456 kB)