|
|
Showing 1 - 2 of
2 matches in All Departments
A guide to the most recent, advanced features of the widely used
OpenMP parallel programming model, with coverage of major features
in OpenMP 4.5. This book offers an up-to-date, practical tutorial
on advanced features in the widely used OpenMP parallel programming
model. Building on the previous volume, Using OpenMP: Portable
Shared Memory Parallel Programming (MIT Press), this book goes
beyond the fundamentals to focus on what has been changed and added
to OpenMP since the 2.5 specifications. It emphasizes four major
and advanced areas: thread affinity (keeping threads close to their
data), accelerators (special hardware to speed up certain
operations), tasking (to parallelize algorithms with a less regular
execution flow), and SIMD (hardware assisted operations on
vectors). As in the earlier volume, the focus is on practical
usage, with major new features primarily introduced by example.
Examples are restricted to C and C++, but are straightforward
enough to be understood by Fortran programmers. After a brief recap
of OpenMP 2.5, the book reviews enhancements introduced since 2.5.
It then discusses in detail tasking, a major functionality
enhancement; Non-Uniform Memory Access (NUMA) architectures,
supported by OpenMP; SIMD, or Single Instruction Multiple Data;
heterogeneous systems, a new parallel programming model to offload
computation to accelerators; and the expected further development
of OpenMP.
A comprehensive overview of OpenMP, the standard application
programming interface for shared memory parallel computing-a
reference for students and professionals. "I hope that readers will
learn to use the full expressibility and power of OpenMP. This book
should provide an excellent introduction to beginners, and the
performance section should help those with some experience who want
to push OpenMP to its limits." -from the foreword by David J. Kuck,
Intel Fellow, Software and Solutions Group, and Director, Parallel
and Distributed Solutions, Intel Corporation OpenMP, a portable
programming interface for shared memory parallel computers, was
adopted as an informal standard in 1997 by computer scientists who
wanted a unified model on which to base programs for shared memory
systems. OpenMP is now used by many software developers; it offers
significant advantages over both hand-threading and MPI. Using
OpenMP offers a comprehensive introduction to parallel programming
concepts and a detailed overview of OpenMP. Using OpenMP discusses
hardware developments, describes where OpenMP is applicable, and
compares OpenMP to other programming interfaces for shared and
distributed memory parallel architectures. It introduces the
individual features of OpenMP, provides many source code examples
that demonstrate the use and functionality of the language
constructs, and offers tips on writing an efficient OpenMP program.
It describes how to use OpenMP in full-scale applications to
achieve high performance on large-scale architectures, discussing
several case studies in detail, and offers in-depth troubleshooting
advice. It explains how OpenMP is translated into explicitly
multithreaded code, providing a valuable behind-the-scenes account
of OpenMP program performance. Finally, Using OpenMP considers
trends likely to influence OpenMP development, offering a glimpse
of the possibilities of a future OpenMP 3.0 from the vantage point
of the current OpenMP 2.5. With multicore computer use increasing,
the need for a comprehensive introduction and overview of the
standard interface is clear. Using OpenMP provides an essential
reference not only for students at both undergraduate and graduate
levels but also for professionals who intend to parallelize
existing codes or develop new parallel programs for shared memory
computer architectures.
|
You may like...
Loot
Nadine Gordimer
Paperback
(2)
R367
R340
Discovery Miles 3 400
Isle Of Dogs
Wes Anderson
Blu-ray disc
R309
Discovery Miles 3 090
Loot
Nadine Gordimer
Paperback
(2)
R367
R340
Discovery Miles 3 400
|