Towards High Performance Computing (Hpc) Through Parallel Programming Paradigms and Their Principles

Nowadays, we are to find out solutions to huge computing problems very rapidly. It brings the idea of parallel computing in which several machines or processors work cooperatively for computational tasks. In the past decades, there are a lot of variations in perceiving the importance of parallelism in computing machines. And it is observed that the parallel computing is a superior solution to many of the computing limitations like speed and density; non-recurring and high cost; and power consumption and heat dissipation etc. The commercial multiprocessors have emerged with lower prices than the mainframe machines and supercomputers machines. In this article the high performance computing (HPC) through parallel programming paradigms (PPPs) are discussed with their constructs and design approaches.

[1]  J SipsH Programming Languages For High Performance Computers. , 1996 .

[2]  Zhiwei Xu,et al.  Language constructs for structured parallel programming , 1992, Proceedings Sixth International Parallel Processing Symposium.

[3]  G. Amdhal,et al.  Validity of the single processor approach to achieving large scale computing capabilities , 1967, AFIPS '67 (Spring).

[4]  John H. Reppy,et al.  Status report: the manticore project , 2007, ML '07.

[5]  R. M. Lea,et al.  Parallel computing efficiency: climbing the learning curve , 1994, Proceedings of TENCON'94 - 1994 IEEE Region 10's 9th Annual International Conference on: 'Frontiers of Computer Technology'.

[6]  Verdi March,et al.  Survey on Parallel Programming Model , 2008, NPC.

[7]  Satoshi Matsuoka,et al.  Implementing Parallel Language Constructs Using a Re ective Object-Oriented Language , 1998 .

[8]  Lawrence Snyder,et al.  The design and development of ZPL , 2007, HOPL.

[9]  Jean-Luc Gaudiot,et al.  The Sisal model of functional programming and its implementation , 1997, Proceedings of IEEE International Symposium on Parallel Algorithms Architecture Synthesis.

[10]  Guy L. Steele,et al.  The High Performance Fortran Handbook , 1993 .

[11]  Steve Vinoski Reliability with Erlang , 2007, IEEE Internet Computing.

[12]  Katherine A. Yelick,et al.  A performance analysis of the Berkeley UPC compiler , 2003, ICS '03.

[13]  George Bosilca,et al.  Open MPI: A High-Performance, Heterogeneous MPI , 2006, 2006 IEEE International Conference on Cluster Computing.

[14]  Gregory R. Andrews,et al.  Concepts and Notations for Concurrent Programming , 1983, CSUR.

[15]  T. P. Singh,et al.  The Distributed Computing Paradigms: P2P, Grid, Cluster, Cloud, and Jungle , 2013, ArXiv.

[16]  Aaron E. Walsh,et al.  Java 2 Bible , 1998 .

[17]  Bradley C. Kuszmaul,et al.  Cilk: an efficient multithreaded runtime system , 1995, PPOPP '95.

[18]  Marvin V. Zelkowitz,et al.  Programming Languages: Design and Implementation , 1975 .

[19]  Lars Bergstrom,et al.  Programming in Manticore, a Heterogenous Parallel Functional Language , 2009, CEFP.

[20]  Peter J. Denning,et al.  The resurgence of parallelism , 2010, Commun. ACM.