Programming multicore and many-core computing systems
- Length: 528 pages
- Edition: 1
- Language: English
- Publisher: Wiley
- Publication Date: 2017-02-06
- ISBN-10: 0470936908
- ISBN-13: 9780470936900
- Sales Rank: #4195234 (See Top 100 Books)
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
Donate to keep this site alive
1. Disable the AdBlock plugin. Otherwise, you may not get any links.
2. Solve the CAPTCHA.
3. Click download link.
4. Lead to download server to download.