Performance pattern of unified parallel C on multi-core clusters

The Partitioned Global Address Space (PGAS) model has been widely used in multi-core clusters as an alternative to MPI. Among the widespread use is Unified Parallel C (UPC). Previous research has shown that UPC performance is comparable with MPI, however in certain cases UPC require hand-tuning tech...

Full description

Saved in:
Bibliographic Details
Main Authors: Abdul Hamid, Nor Asilah Wati, Serres, Olivier, Anbar, Ahmad, Hassan, Sazlinah
Format: Conference or Workshop Item
Published: IEEE (IEEE Xplore) 2013
Online Access:http://psasir.upm.edu.my/id/eprint/41309/
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:The Partitioned Global Address Space (PGAS) model has been widely used in multi-core clusters as an alternative to MPI. Among the widespread use is Unified Parallel C (UPC). Previous research has shown that UPC performance is comparable with MPI, however in certain cases UPC require hand-tuning techniques such as prefetching and privatized pointers-to-shared to improve the performance. In this paper we reviews, evaluate and analyze the performance pattern between UPC Naïve, UPC optimize and MPI on two different multi-core clusters architecture. We focus our study using matrix multiplication as the benchmark and perform our experimental on two distributed memory machine, Cray XE6 with Gemini interconnects and Sun Cluster with Infiniband interconnects. We provide analysis on each core execution time to understand the pattern of communication for both machines. We also demonstrate the gaps between naïve and optimized are depends on the compiler with its associate distributed memory machine. We also observed unnecessary optimization for certain programs related to HPC architecture and compiler.