Basics of OpenMP Programming

  • Katagiri T
N/ACitations
Citations of this article
3Readers
Mendeley users who have this article in their library.
Get full text

Abstract

This chapter explains the basics of OpenMP programming, which is widely used in parallel programming language for thread parallelization with inside node parallelism. Specifications of major constructs and clauses for OpenMP are explained with several examples of programming. Scheduling, which is a job allocation method for OpenMP, is also explained. Code optimization techniques for OpenMP, named First Touch, is also shown. Finally, the possibility of extension to Graphics Processing Unit (GPU) from programming with OpenMP is explained with OpenMP version 4.0 and OpenACC. 3.1 What Is OpenMP? 3.1.1 Overviews OpenMP (OpenMP C and C++ Application Program Interface Version 1.0) [1, 2] is a specification that contains (1) Directives; (2) Libraries; and (3) Environmental variables; for parallel programming with shared memory machines. Programmers describe parallelization with directives provided by OpenMP specification. The most important thing when using OpenMP is that OpenMP does not provide automatic parallelization. Programmers need to parallelize their codes with OpenMP directives by themselves. It is said that programming with OpenMP is easier than programming with MPI since programming with

Cite

CITATION STYLE

APA

Katagiri, T. (2019). Basics of OpenMP Programming. In The Art of High Performance Computing for Computational Science, Vol. 1 (pp. 45–59). Springer Singapore. https://doi.org/10.1007/978-981-13-6194-4_3

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free