Hardware Trends and Implications for Programming Models

Hardware Trends and Implications for Programming Models

Gabriele Jost (The University of Texas at Austin, USA) and Alice E. Koniges (Lawrence Berkeley National Laboratory, USA)
DOI: 10.4018/978-1-61350-116-0.ch001
OnDemand PDF Download:


The upcoming years bring new challenges in high-performance computing (HPC) technology. Fundamental changes in the building blocks of HPC hardware are forcing corresponding changes in programming models to effectively use these new architectures. The changes in store for HPC will rival the vector to massively parallel transition that scientific and engineering codes and methodologies endured several years ago. We describe some of the upcoming trends in hardware designs, and suggest ways in which software and programming models will advance accordingly.
Chapter Preview


Exascale computation (i.e., at a rate exceeding 1018 operations per second) by 2018 has been identified as a challenging but attainable for the future of scientific and engineering computation, that will lead to numerous advances in fundamental science. Quoting from “Report on Exascale Computing,” (ASCAC (2010)), ’Going to the exascale’ will mean a radical change in computing architecture – basically, vastly increasing the levels of parallelism to the point of millions of processors working in tandem – which will force radical changes in how hardware is designed (at minimum, driven by economic limitations on power consumption), in how we go about solving problems (e.g., the application codes), and in how we marry application codes to the underlying hardware (e.g., the compilers, I/O, middleware, and related software tools). On the brink of the exascale era, we are already seeing new hardware trends and corresponding advances in programming models. In this chapter we describe some of the recent trends and the programming models that are evolving to fit the new hardware.

Key Terms in this Chapter

MPI: Message Passing Interface

NPB-MZ: NAS Parallel Benchmarks Multizone Version

NPB: NAS Parallel Benchmarks.

API: Application Programming Interface

UPC: Unified Parallel C

TBB: Thread Building Blocks

ccNUMA: Cache-coherent non-uniform memory access

SMP node: one or more sockets interconnected such that all cores on all sockets have access to each other memory modules

Socket: Motherboard with one or more cores

SMP node: one or more sockets interconnected such that all cores on all sockets have access to each other memory modules

GPGPU: General Purpose Graphical Processing Unit

HPF: High Performance Fortran

PGAS: Partitioned Global Address Space

NUMA: non-uniform memory access

HPC: High Performance Computing

FPGA: Field Programmable Gate Array Processor

FFT: Fast Fourier Transformation

SPMD: Single Program Multiple Data

COTS: Commodity-off-the-shelf

GAS: Global Address Space GAS: Global Address Space

CAF: Co-Array Fortran

Socket: Motherboard with one or more cores

Core: Processing unit on a chip

SMP: shared memory processor, formerly used for symmetric multiprocessor

MPP: Massively parallel processing

SMP: shared memory processor, formerly used for symmetric multiprocessor

CFD: Computational Fluid Dynamics

Complete Chapter List

Search this Book:
Editorial Advisory Board
Table of Contents
Joanna Leng, Wes Sharrock
Chapter 1
Gabriele Jost, Alice E. Koniges
The upcoming years bring new challenges in high-performance computing (HPC) technology. Fundamental changes in the building blocks of HPC hardware... Sample PDF
Hardware Trends and Implications for Programming Models
Chapter 2
Ivan Girotto, Robert M. Farber
This chapter focuses on the technical/commercial dynamics of multi-threaded hardware architecture development, including a cost/benefit account of... Sample PDF
Multi-Threaded Architectures: Evolution, Costs, Opportunities
Chapter 3
Domingo Benitez
Many accelerator-based computers have demonstrated that they can be faster and more energy-efficient than traditional high-performance multi-core... Sample PDF
High-Performance Customizable Computing
Chapter 4
Rasit O. Topaloglu, Swati R. Manjari, Saroj K. Nayak
Interconnects in semiconductor integrated circuits have shrunk to nanoscale sizes. This size reduction requires accurate analysis of the quantum... Sample PDF
High-Performance Computing for Theoretical Study of Nanoscale and Molecular Interconnects
Chapter 5
Prashobh Balasundaram
This chapter presents a study of leading open source performance analysis tools for high performance computing (HPC). The first section motivates... Sample PDF
Effective Open-Source Performance Analysis Tools
Chapter 6
David Worth, Chris Greenough, Shawn Chin
The purpose of this chapter is to introduce scientific software developers to software engineering tools and techniques that will save them much... Sample PDF
Pragmatic Software Engineering for Computational Science
Chapter 7
Diane Kelly, Daniel Hook, Rebecca Sanders
The aim of this chapter is to provide guidance on the challenges and approaches to testing computational applications. Testing in our case is... Sample PDF
A Framework for Testing Code in Computational Applications
Chapter 8
Judith Segal, Chris Morris
There are significant challenges in developing scientific software for a broad community. In this chapter, we discuss how these challenges are... Sample PDF
Developing Software for a Scientific Community: Some Challenges and Solutions
Chapter 9
Fumie Costen, Akos Balasko
The computational architecture of Enabling Grids for E-sciencE is introduced as it made our code porting very challenging, and the discussion... Sample PDF
Opportunities and Challenges in Porting a Parallel Code from a Tightly-Coupled System to the Distributed EU Grid, Enabling Grids for E-sciencE
Chapter 10
Abid Yahya, Farid Ghani, R. Badlishah Ahmad, Mostafijur Rahman, Aini Syuhada, Othman Sidek, M. F. M. Salleh
This chapter presents performance of a new technique for constructing Quasi-Cyclic Low-Density Parity-Check (QC-LDPC) encrypted codes based on a row... Sample PDF
Development of an Efficient and Secure Mobile Communication System with New Future Directions
Chapter 11
Hubertus J. J. van Dam
Quantum chemistry was a compute intensive field from the beginning. It was also an early adopter of parallel computing, and hence, has more than... Sample PDF
Parallel Quantum Chemistry at the Crossroads
Chapter 12
Marc Hafner, Heinz Koeppl
With the advances in measurement technology for molecular biology, predictive mathematical models of cellular processes come in reach. A large... Sample PDF
Stochastic Simulations in Systems Biology
Chapter 13
C. T. J. Dodson
Many real processes have stochastic features which seem to be representable in some intuitive sense as `close to Poisson’, `nearly random’, `nearly... Sample PDF
Some Illustrations of Information Geometry in Biology and Physics
Chapter 14
Stefania Tomasiello
Though relatively unknown, the Differential Quadrature Method (DQM) is a promising numerical technique that produces accurate solutions with less... Sample PDF
DQ Based Methods: Theory and Application to Engineering and Physical Sciences
Chapter 15
Marco Evangelos Biancolini
Radial Basis Functions (RBF) mesh morphing, its theoretical basis, its numerical implementation, and its use for the solution of industrial... Sample PDF
Mesh Morphing and Smoothing by Means of Radial Basis Functions (RBF): A Practical Example Using Fluent and RBF Morph
Chapter 16
Joanna Leng, Theresa-Marie Rhyne, Wes Sharrock
This chapter focuses on state of the art at the intersection of visualization and CSE. From understanding current trends it looks to future... Sample PDF
Visualization: Future Technology and Practices for Computational Science and Engineering
Chapter 17
Peter Sarlin
Since the 1980s, two severe global waves of sovereign defaults have occurred in less developed countries (LDCs): the LDC defaults in the 1980s and... Sample PDF
Visualizing Indicators of Debt Crises in a Lower Dimension: A Self-Organizing Maps Approach
Chapter 18
Iain Barrass, Joanna Leng
Since infectious diseases pose a significant risk to human health many countries aim to control their spread. Public health bodies faced with a... Sample PDF
Improving Computational Models and Practices: Scenario Testing and Forecasting the Spread of Infectious Disease
Chapter 19
Eldon R. Rene, Sung Joo Kim, Dae Hee Lee, Woo Bong Je, Mirian Estefanía López, Hung Suck Park
Sequencing batch reactor (SBR) is a versatile, eco-friendly, and cost-saving process for the biological treatment of nutrient-rich wastewater, at... Sample PDF
Artificial Neural Network Modelling of Sequencing Batch Reactor Performance
Chapter 20
Joanna Leng, Wes Sharrock
Computational Science and Engineering (CSE) is an emerging, rapidly developing, and potentially very significant force in changing scientific... Sample PDF
The State of Development of CSE
Chapter 21
Kerstin Kleese van Dam, Mark James, Andrew M. Walker
This chapter describes the key principles and components of a good data management system, provides real world examples of how these can be... Sample PDF
Integrating Data Management and Collaborative Sharing with Computational Science Research Processes
Chapter 22
Jens Jensen, David L. Groep
Modern science increasingly depends on international collaborations. Large instruments are expensive and have to be funded by several countries, and... Sample PDF
Security and Trust in a Global Research Infrastructure
Chapter 23
Matt Ratto
Computational science and engineering (CSE) technologies and methods are increasingly considered important tools for the humanities and are being... Sample PDF
CSE as Epistemic Technologies: Computer Modeling and Disciplinary Difference in the Humanities
Chapter 24
Phillip L. Manning, Peter L. Falkingham
Dinosaurs successfully conjure images of lost worlds and forgotten lives. Our understanding of these iconic, extinct animals now comes from many... Sample PDF
Science Communication with Dinosaurs
About the Contributors