omp_alloc

A Quick OpenMP Memory Allocator Used by CppAD

Syntax

# include <cppad/omp_alloc.hpp>

Purpose

The C++ new and delete operators are thread safe, but this means that a thread may have to wait for a lock on these operations. Once memory is obtained for a thread, the omp_alloc memory allocator keeps that memory omp_available for the thread so that it can be re-used without waiting for a lock. All the CppAD memory allocations use this utility. The omp_free_available function should be used to return memory to the system (once it is no longer required by a thread).

Include

The routines in sections below are defined by cppad/omp_alloc.hpp . This file is included by cppad/cppad.hpp , but it can also be included separately with out the rest of the CppAD .

Deprecated 2011-08-23

Use thread_alloc instead.

Contents

Name

Title

omp_max_num_threads

Set and Get Maximum Number of Threads for omp_alloc Allocator

omp_in_parallel

Is The Current Execution in OpenMP Parallel Mode

omp_get_thread_num

Get the Current OpenMP Thread Number

omp_get_memory

Get At Least A Specified Amount of Memory

omp_return_memory

Return Memory to omp_alloc

omp_free_available

Free Memory Currently Available for Quick Use by a Thread

omp_inuse

Amount of Memory a Thread is Currently Using

omp_available

Amount of Memory Available for Quick Use by a Thread

omp_create_array

Allocate Memory and Create A Raw Array

omp_delete_array

Return A Raw Array to The Available Memory for a Thread

omp_efficient

Check If A Memory Allocation is Efficient for Another Use

old_max_num_threads

Set Maximum Number of Threads for omp_alloc Allocator