Using OpenMP—The Next Step: Affinity, Accelerators, Tasking, and SIMD
Книга «Using OpenMP—The Next Step» является продолжением классического руководства по OpenMP и посвящена новым возможностям стандарта, появившимся в версиях 3.0, 4.0 и 4.5. Авторы — известные эксперты в области параллельных вычислений — детально рассматривают такие темы, как задачи (tasking), привязка потоков (thread affinity), поддержка ускорителей (accelerators) и SIMD-векторизация.
Издание начинается с краткого обзора OpenMP 2.5, что позволяет читателям освежить базовые знания, а затем переходит к новым конструкциям и директивам. Особое внимание уделено практическим примерам: параллелизация связных списков, быстрая сортировка, конвейерная обработка данных с перекрытием ввода-вывода и вычислений.
Значительная часть книги посвящена управлению привязкой потоков к процессорным ядрам в cc-NUMA архитектурах, что критически важно для достижения высокой производительности на современных многоядерных системах. Рассматриваются политики master, close и spread, а также концепция OpenMP Places.
Книга будет полезна разработчикам высокопроизводительных приложений, научным сотрудникам и инженерам, стремящимся эффективно использовать возможности современных параллельных архитектур. Издание сопровождается многочисленными примерами кода на языках C/C++ и Fortran.
