Development of hybrid MPI+UPC parallel programming model

Loading...
Thumbnail Image

Date

2011

Journal Title

Journal ISSN

Volume Title

Publisher

Kadir Has Üniversitesi

Research Projects

Organizational Units

Journal Issue

Abstract

Parallel Computing is a form of computation that divides a large set of calculations into tasks and runs on multi-core machines simultaneously. Today, Message Passing Interface (MPI) is the most widely used parallel programming paradigm that provides programming both for symmetric multi-processors (SMPs) which consists of shared memory nodes with several multi-core CPUs connected to a high speed network and among nodes simultaneously. Unified Parallel C (UPC) is an alternative language that supports Partitioned Global Address Space (PGAS) that allows shared memory like programming on distributed memory systems.In this thesis, we describe the MPI, UPC and hybrid parallel programming paradigm which is designed to combine MPI and UPC programming models. The aim of the hybrid model is to utilize the advantages of MPI and UPC; these are, MPI?s data locality control and scalability strengths with UPC?s global address space, fine grain parallelism and ease of programming to achieve multiple level parallelism. This thesis presents a detailed description of hybrid model implementation comparing with pure MPI and pure UPC implementations. Experiments showed that the hybrid MPI+UPC model can significantly provide performance increases up to double with pure UPC implementation and up to 20% increases in comparison to pure MPI implementation. Furthermore, an optimization was achieved which improved the hybrid performance an additional 20%.
Paralel Hesaplama geniş hesap kümelerini görevlere bölen ve bu görevleri çok çekirdekli makinelerde aynı anda çalıştırmaya yarayan hesaplama biçimidir. Bugün, Message Passing Interface (MPI - Mesaj Gönderme Arayüzü) ortak hafıza noktaları ile birçok çok çekirdekli işlemcinin yüksek hızlı bir networke bağlanmasından oluşan simetrik çoklu işlemciler (SMP) ve noktalar (nodes) arasında aynı anda programlamayı sağlayan ve kullanılan en geniş paralel programlama paradigmasıdır. Unified Parallel C (UPC) dağıtık adresli sistemleri ortak hafızalı sistemler gibi programlamaya izin veren Bölünmüş Global Adres Alanı'nı (PGAS) destekleyen alternatif bir dildir.Bu tezde, MPI, UPC, MPI ve UPC programlama modellerini birleştirmek için tasarlanan hibrid paralel programlama paradigması anlatılmıştır. Hibrid modelin amacı MPI ve UPC' nin avantajlarından faydalanmaktır. Bunlar MPI modelin yerel data kontrolü ve ölçeklenebilirliği ile UPC modelin global adres alanı, ince taneli paralellik ve çoklu seviye paralellik sağlamak için programlama kolaylığı özellikleridir. Bu çalışma hibrid model uygulamasını yalnız MPI ve yalnız UPC uygulamaları ile karşılaştırmak suretiyle ayrıntılı açıklama sunmaktadır. Deneyler hibrid MPI+UPC modelin önemli ölçüde yalnız UPC uygulaması ile iki kat ve yalnız MPI uygulamasında %20' ye kadar performans artışı sağlayabildiğini göstermiştir. Ayrıca hibrid performansı geliştiren bir optimizasyonda ek olarak %20 iyileşme kazanılmıştır.

Description

Keywords

Turkish CoHE Thesis Center URL

Citation

WoS Q

Scopus Q

Source

Volume

Issue

Start Page

End Page

Collections