nag_omp_get_num_threads (x06abc) (PDF version)
x06 Chapter Contents
x06 Chapter Introduction
NAG Library Manual

NAG Library Function Document

nag_omp_get_num_threads (x06abc)

 Contents

    1  Purpose
    7  Accuracy
    10  Example

1  Purpose

nag_omp_get_num_threads (x06abc) returns the number of OpenMP threads in the current team.

2  Specification

#include <nag.h>
#include <nagx06.h>
Integer  nag_omp_get_num_threads ()

3  Description

nag_omp_get_num_threads (x06abc), for multi-threaded implementations, returns the number of OpenMP threads in the current team. If the number of threads is deemed critical then you are advised to use nag_omp_get_num_threads (x06abc) to retrieve this value as it may be less than that requested with either a call to nag_omp_set_num_threads (x06aac), your OMP_NUM_THREADS environment variable value or by using a num_threads clause on an OpenMP parallel directive.
The number of threads actually in use in a parallel region is dependent on several factors. Please refer to Section 4 for a full description of how the number of threads is chosen for a particular parallel region.
If this function is called from a sequential part of a multi-threaded program then it will return the value 1.
In serial implementations of the NAG C Library this function will always return 1. See the x06 Chapter Introduction for a discussion of the behaviour of these functions when called in serial.

4  References

OpenMP Specifications http://openmp.org/wp/OpenMP-Specifications
Chapman B, Jost G and van der Pas R (2008) Using OpenMP Portable Shared Memory Parallel Programming The MIT Press

5  Arguments

None.

6  Error Indicators and Warnings

None.

7  Accuracy

Not applicable.

8  Parallelism and Performance

Not applicable.

9  Further Comments

None.

10  Example

See Section 10 in nag_omp_set_num_threads (x06aac) for a demonstration of how to use nag_omp_get_num_threads (x06abc).

nag_omp_get_num_threads (x06abc) (PDF version)
x06 Chapter Contents
x06 Chapter Introduction
NAG Library Manual

© The Numerical Algorithms Group Ltd, Oxford, UK. 2015