Performance-based parallel loop self-scheduling using hybrid OpenMP and MPI programming on multicore SMP clusters

Chao Tung Yang, Chao-Chin Wu, Jen Hsiang Chang

Research output: Contribution to journalArticle

10 Citations (Scopus)

Abstract

Parallel loop self-scheduling on parallel and distributed systems has been a critical problem and it is becoming more difficult to deal with in the emerging heterogeneous cluster computing environments. In the past, some self-scheduling schemes have been proposed as applicable to heterogeneous cluster computing environments. In recent years, multicore computers have been widely included in cluster systems. However, previous researches into parallel loop self-scheduling did not consider certain aspects of multicore computers; for example, it is more appropriate for shared-memory multiprocessors to adopt Open Multi-Processing (OpenMP) for parallel programming. In this paper, we propose a performance-based approach using hybrid OpenMP and MPI parallel programming, which partition loop iterations according to the performance weighting of multicore nodes in a cluster. Because iterations assigned to one MPI process are processed in parallel by OpenMP threads run by the processor cores in the same computational node, the number of loop iterations allocated to one computational node at each scheduling step depends on the number of processor cores in that node. Experimental results show that the proposed approach performs better than previous schemes.

Original languageEnglish
Pages (from-to)721-744
Number of pages24
JournalConcurrency Computation Practice and Experience
Volume23
Issue number8
DOIs
Publication statusPublished - 2011 Jun 10

    Fingerprint

All Science Journal Classification (ASJC) codes

  • Software
  • Theoretical Computer Science
  • Computer Science Applications
  • Computer Networks and Communications
  • Computational Theory and Mathematics

Cite this