Study of Performance on SMP and Distributed Memory Architectures Using a Shared Memory Programming Model

Study of Performance on SMP and Distributed Memory Architectures Using a Shared Memory Programming Model
Title Study of Performance on SMP and Distributed Memory Architectures Using a Shared Memory Programming Model PDF eBook
Author
Publisher
Pages 26
Release 1997
Genre
ISBN

Download Study of Performance on SMP and Distributed Memory Architectures Using a Shared Memory Programming Model Book in PDF, Epub and Kindle

In this paper we examine the use of a shared memory programming model to address the problem of portability of application codes between distributed memory and shared memory architectures. We do this with an extension of the Parallel C Preprocessor. The extension, borrowed from Split-C and AC, uses type qualifiers instead of storage class modifiers to declare variables that are shared among processors. The type qualifier declaration supports an abstract shared memory facility on distributed memory machines while making direct use of hardware support on shared memory architectures. Our benchmarking study spans a wide range of shared memory and distributed memory platforms. Benchmarks include Gaussian elimination with back substitution, a two-dimensional fast Fourier transform, and a matrix-matrix multiply. We find that the type-qualifier-based shared memory programming model is capable of efficiently spanning both distributed memory and shared memory architectures. Although the resulting shared memory programming model is portable, it does not remove the need to arrange for overlapped or blocked remote memory references on platforms that require these tuning measures in order to obtain good performance.

Extending the HybridThread SMP Model for Distributed Memory Systems

Extending the HybridThread SMP Model for Distributed Memory Systems
Title Extending the HybridThread SMP Model for Distributed Memory Systems PDF eBook
Author Eugene Anthony Cartwright
Publisher
Pages 154
Release 2012
Genre Field programmable gate arrays
ISBN 9781267304865

Download Extending the HybridThread SMP Model for Distributed Memory Systems Book in PDF, Epub and Kindle

Memory Hierarchy is of growing importance in system design today. As Moore's Law allows system designers to include more processors within their designs, data locality becomes a priority. Traditional multiprocessor systems on chip (MPSoC) experience difficulty scaling as the quantity of processors increases. This challenge is common behavior of memory accesses in a shared memory environment and causes a decrease in memory bandwidth as processor numbers increase. In order to provide the necessary levels of scalability, the computer architecture community has sought to decentralize memory accesses by distributing memory throughout the system. Distributed memory offers greater bandwidth due to decoupled access paths. Today's million gate Field Programmable Gate Arrays (FPGA) offer an invaluable opportunity to explore this type of memory hierarchy. FPGA vendors such as Xilinx provide dual-ported on-chip memory for decoupled access in addition to configurable sized memories. In this work, a new platform was created around the use of dual-ported SRAMs for distributed memory to explore the possible scalability of this form of memory hierarchy. However, developing distributed memory poses a tremendous challenge: supporting a linear address space that allows wide applicability to be achieved. Many have agreed that a linear address space eases the programmability of a system. Although the abstraction of disjointed memories via underlying architecture and/or new programming presents an advantage in exploring the possibilities of distributed memory, automatic data partitioning and migration remains a considerable challenge. In this research this challenge was dealt with by the inclusion of both a shared memory and distributed memory model. This research is vital because exposing the programmer to the underlying architecture while providing a linear address space results in desired standards of programmability and performance alike. In addition, standard shared memory programming models can be applied allowing the user to enjoy full scalable performance potential.

Experience with Mixed MPI

Experience with Mixed MPI
Title Experience with Mixed MPI PDF eBook
Author
Publisher
Pages
Release 1999
Genre
ISBN

Download Experience with Mixed MPI Book in PDF, Epub and Kindle

A shared memory cluster is a parallel computer that consists of multiple nodes connected through an interconnection network. Each node is a symmetric multiprocessor (SMP) unit in which multiple CPUs share uniform access to a pool of main memory. The SGI Origin 2000, Compaq (formerly DEC) AlphaServer Cluster, and recent IBM RS6000/SP systems are all variants of this architecture. The SGI Origin 2000 has hardware that allows tasks running on any processor to access any main memory location in the system, so all the memory in the nodes forms a single shared address space. This is called a nonuniform memory access (NUMA) architecture because it gives programs a single shared address space, but the access time to different memory locations varies. In the IBM and Compaq systems, each node's memory forms a separate address space, and tasks communicate between nodes by passing messages or using other explicit mechanisms. Many large parallel codes use standard MPI calls to exchange data between tasks in a parallel job, and this is a natural programming model for distributed memory architectures. On a shared memory architecture, message passing is unnecessary if the code is written to use multithreading: threads run in parallel on different processors, and they exchange data simply by reading and writing shared memory locations. Shared memory clusters combine architectural elements of both distributed memory and shared memory systems, and they support both message passing and multithreaded programming models. Application developers are now trying to determine which programming model is best for these machines. This paper presents initial results of a study aimed at answering that question. We interviewed developers representing nine scientific code groups at Lawrence Livermore National Laboratory (LLNL). All of these groups are attempting to optimize their codes to run on shared memory clusters, specifically the IBM and DEC platforms at LLNL. This paper will focus on ease-of-use issues. We plan in a future paper to analyze the performance of various programming models. Section 2 describes the common programming models available on shared memory clusters. In Section 3 we briefly describe the architectures of the IBM and DEC machines at LLNL. Section 4 describes the codes we surveyed and the parallel programming models they use. We conclude in Section 5 with a summary of the lessons we have learned so far about multilevel parallelism.

Handbook on Parallel and Distributed Processing

Handbook on Parallel and Distributed Processing
Title Handbook on Parallel and Distributed Processing PDF eBook
Author Jacek Blazewicz
Publisher Springer Science & Business Media
Pages 645
Release 2013-03-09
Genre Computers
ISBN 3662043033

Download Handbook on Parallel and Distributed Processing Book in PDF, Epub and Kindle

Here, authors from academia and practice provide practitioners, scientists and graduates with basic methods and paradigms, as well as important issues and trends across the spectrum of parallel and distributed processing. In particular, they cover such fundamental topics as efficient parallel algorithms, languages for parallel processing, parallel operating systems, architecture of parallel and distributed systems, management of resources, tools for parallel computing, parallel database systems and multimedia object servers, as well as the relevant networking aspects. A chapter is dedicated to each of parallel and distributed scientific computing, high-performance computing in molecular sciences, and multimedia applications for parallel and distributed systems.

Virtual Shared Memory for Distributed Architectures

Virtual Shared Memory for Distributed Architectures
Title Virtual Shared Memory for Distributed Architectures PDF eBook
Author Eva Kühn
Publisher Nova Publishers
Pages 138
Release 2001
Genre Architecture
ISBN 9781590331019

Download Virtual Shared Memory for Distributed Architectures Book in PDF, Epub and Kindle

Virtual Shared Memory for Distributed Architecture

Scalable Shared Memory Multiprocessors

Scalable Shared Memory Multiprocessors
Title Scalable Shared Memory Multiprocessors PDF eBook
Author Michel Dubois
Publisher Springer Science & Business Media
Pages 326
Release 2012-12-06
Genre Computers
ISBN 1461536049

Download Scalable Shared Memory Multiprocessors Book in PDF, Epub and Kindle

The workshop on Scalable Shared Memory Multiprocessors took place on May 26 and 27 1990 at the Stouffer Madison Hotel in Seattle, Washington as a prelude to the 1990 International Symposium on Computer Architecture. About 100 participants listened for two days to the presentations of 22 invited The motivation for this workshop was to speakers, from academia and industry. promote the free exchange of ideas among researchers working on shared-memory multiprocessor architectures. There was ample opportunity to argue with speakers, and certainly participants did not refrain a bit from doing so. Clearly, the problem of scalability in shared-memory multiprocessors is still a wide-open question. We were even unable to agree on a definition of "scalability". Authors had more than six months to prepare their manuscript, and therefore the papers included in this proceedings are refinements of the speakers' presentations, based on the criticisms received at the workshop. As a result, 17 authors contributed to these proceedings. We wish to thank them for their diligence and care. The contributions in these proceedings can be partitioned into four categories 1. Access Order and Synchronization 2. Performance 3. Cache Protocols and Architectures 4. Distributed Shared Memory Particular topics on which new ideas and results are presented in these proceedings include: efficient schemes for combining networks, formal specification of shared memory models, correctness of trace-driven simulations,synchronization, various coherence protocols, .

Languages, Compilers and Run-time Environments for Distributed Memory Machines

Languages, Compilers and Run-time Environments for Distributed Memory Machines
Title Languages, Compilers and Run-time Environments for Distributed Memory Machines PDF eBook
Author J. Saltz
Publisher Elsevier
Pages 323
Release 2014-06-28
Genre Computers
ISBN 1483295389

Download Languages, Compilers and Run-time Environments for Distributed Memory Machines Book in PDF, Epub and Kindle

Papers presented within this volume cover a wide range of topics related to programming distributed memory machines. Distributed memory architectures, although having the potential to supply the very high levels of performance required to support future computing needs, present awkward programming problems. The major issue is to design methods which enable compilers to generate efficient distributed memory programs from relatively machine independent program specifications. This book is the compilation of papers describing a wide range of research efforts aimed at easing the task of programming distributed memory machines.