Programming Models for Multicore and Many-Core Computing Systems

Authors
  • R.M. Badia
  • X. Martorell
Publication date 2017
Host editors
  • S. Pllana
  • F. Xhafa
Book title Programming Multicore and Many-Core Computing Systems
ISBN
  • 9780470936900
ISBN (electronic)
  • 9781119332015
Series Wiley series on parallel and distributed computing
Pages (from-to) 29-58
Number of pages 30
Publisher Hoboken, NJ: Wiley
Organisations
  • Faculty of Science (FNWI) - Informatics Institute (IVI)
  • Faculty of Science (FNWI)
Abstract

This chapter presents a comprehensive set of many-core programming models belonging to three classes: parallelism-centric, hardware-centric and application-centric. To evaluate these models, the chapter introduces four classes of reference features: usability, design support, implementation support and programmability. The chapter discusses three classes of many-core architectures used for high performance computing: general purpose multicore processors (GPMCs), graphical processing units (GPUs) and the Cell Broadband Engine (Cell/B.E.) processor. It also presents a survey of representative multicore programming models for each of the three classes of platforms. The chapter also presents the overall evaluation of all surveyed programming models. It shows that choosing the matching platform(s) and programming model(s) remains an important first step when a new application needs a many-core port. In terms of programmability impact, low-level programming models score pretty bad, models based on sequential code are very productive, and OpenCL is a good alternative in case an application needs to be developed from scratch.

Document type Chapter
Language English
Published at https://doi.org/10.1002/9781119332015.ch2
Other links https://www.scopus.com/pages/publications/85019614245
Permalink to this page
Back