omp_max_thread

View page source

OpenMP Parallel Setup

Deprecated 2011-06-23

Use thread_alloc::parallel_setup to set the number of threads.

Syntax

AD < Base >:: omp_max_thread ( number )

Purpose

By default, for each AD < Base > class there is only one tape that records AD of Base operations. This tape is a global variable and hence it cannot be used by multiple OpenMP threads at the same time. The omp_max_thread function is used to set the maximum number of OpenMP threads that can be active. In this case, there is a different tape corresponding to each AD < Base > class and thread pair.

number

The argument number has prototype

size_t number

It must be greater than zero and specifies the maximum number of OpenMp threads that will be active at one time.

Independent

Each call to Independent(x) creates a new Active tape. All of the operations with the corresponding variables must be preformed by the same OpenMP thread. This includes the corresponding call to f.Dependent(x,y) or the ADFun f(x, y) during which the tape stops recording and the variables become parameters.

Restriction

No tapes can be Active when this function is called.