Programming multicore and many-core computing systems Front Cover

Programming multicore and many-core computing systems

  • Length: 528 pages
  • Edition: 1
  • Publisher:
  • Publication Date: 2017-02-06
  • ISBN-10: 0470936908
  • ISBN-13: 9780470936900
  • Sales Rank: #4195234 (See Top 100 Books)
Description

Programming multi-core and many-core computing systems

Sabri Pllana, Linnaeus University, Sweden

Fatos Xhafa, Technical University of Catalonia, Spain

Provides state-of-the-art methods for programming multi-core and many-core systems

The book comprises a selection of twenty two chapters covering: fundamental techniques and algorithms; programming approaches; methodologies and frameworks; scheduling and management; testing and evaluation methodologies; and case studies for programming multi-core and many-core systems.

Program development for multi-core processors, especially for heterogeneous multi-core processors, is significantly more complex than for single-core processors. However, programmers have been traditionally trained for the development of sequential programs, and only a small percentage of them have experience with parallel programming.  In the past, only a relatively small group of programmers interested in High Performance Computing (HPC) was concerned with the parallel programming issues, but the situation has changed dramatically with the appearance of multi-core processors on commonly used computing systems. It is expected that with the pervasiveness of multi-core processors, parallel programming will become mainstream.

The pervasiveness of multi-core processors affects a large spectrum of systems, from embedded and general-purpose, to high-end computing systems. This book assists programmers in mastering the efficient programming of multi-core systems, which is of paramount importance for the software-intensive industry towards a more effective product-development cycle.

Key features:

  • Lessons, challenges, and roadmaps ahead.
  • Contains real world examples and case studies.
  • Helps programmers in mastering the efficient programming of multi-core and many-core systems.

The book serves as a reference for a larger audience of practitioners, young researchers and graduate level students. A basic level of programming knowledge is required to use this book.

Table of Contents

PART I: FOUNDATIONS
CHAPTER 1: MULTI- AND MANY-CORES, ARCHITECTURAL OVERVIEW FOR PROGRAMMERS
CHAPTER 2: PROGRAMMING MODELS FOR MULTICORE AND MANY-CORE COMPUTING SYSTEMS
CHAPTER 3: LOCK-FREE CONCURRENT DATA STRUCTURES
CHAPTER 4: SOFTWARE TRANSACTIONAL MEMORY

PART II: PROGRAMMING APPROACHES
CHAPTER 5: HYBRID/HETEROGENEOUS PROGRAMMING WITH OMPSS AND ITS SOFTWARE/HARDWARE IMPLICATIONS
CHAPTER 6: SKELETON PROGRAMMING FOR PORTABLE MANY-CORE COMPUTING
CHAPTER 7: DSL STREAM PROGRAMMING ON MULTICORE ARCHITECTURES
CHAPTER 8: PROGRAMMING WITH TRANSACTIONAL MEMORY
CHAPTER 9: OBJECT-ORIENTED STREAM PROGRAMMING
CHAPTER 10: SOFTWARE-BASED SPECULATIVE PARALLELIZATION
CHAPTER 11: AUTONOMIC DISTRIBUTION AND ADAPTATION

PART III: PROGRAMMING FRAMEWORKS
CHAPTER 12: PEPPHER: PERFORMANCE PORTABILITY AND PROGRAMMABILITY FOR HETEROGENEOUS MANY-CORE ARCHITECTURES
CHAPTER 13: FASTFLOW: HIGH-LEVEL AND EFFICIENT STREAMING ON MULTICORE
CHAPTER 14: PARALLEL PROGRAMMING FRAMEWORK FOR H.264/AVC VIDEO ENCODING IN MULTICORE SYSTEMS
CHAPTER 15: PARALLELIZING EVOLUTIONARY ALGORITHMS ON GPGPU CARDS WITH THE EASEA PLATFORM

PART IV: TESTINE, EVALUATION AN OPTIMIZATION
CHAPTER 16: SMART INTERLEAVINGS FOR TESTING PARALLEL PROGRAMS
CHAPTER 17: PARALLEL PERFORMANCE EVALUATION AND OPTIMIZATION
CHAPTER 18: A METHODOLOGY FOR OPTIMIZING MULTITHREADED SYSTEM SCALABILITY ON MULTICORES
CHAPTER 19: IMPROVING MULTICORE SYSTEM PERFORMANCE THROUGH DATA COMPRESSION

PART V: SCHEDULING AND MANAGEMENT
CHAPTER 20: PROGRAMMING AND MANAGING RESOURCES ON ACCELERATOR-ENABLED CLUSTERS
CHAPTER 21: AN APPROACH FOR EFFICIENT EXECUTION OF SPMD APPLICATIONS ON MULTICORE CLUSTERS
CHAPTER 22: OPERATING SYSTEM AND SCHEDULING FOR FUTURE MULTICORE AND MANY-CORE PLATFORMS

To access the link, solve the captcha.