[CppAD] User Atomic Functions

Brad Bell bradbell at seanet.com
Wed May 29 08:40:36 EDT 2013


The old user atomic function interface
     http://www.coin-or.org/CppAD/Doc/old_atomic.xml
has been deprecated. The new interface
     http://www.coin-or.org/CppAD/Doc/atomic_base.xml
should be easier to use and faster.

In addition, atomic_base has been used to create an easy to use and 
flexible method for checkpointing functions for which the operation 
sequence does not depend on the arguments; see;
     http://www.coin-or.org/CppAD/Doc/checkpoint.xml
     http://www.coin-or.org/CppAD/Doc/glossary.xml#Operation.Sequence

One use of the atomic_base feature could be to extend CppAD to include 
atomic matrix operations. A matrix multiply operation has been included 
as an example; see
     http://www.coin-or.org/CppAD/Doc/atomic_mat_mul.cpp.xml

If one made solving linear equations an atomic operation, one would not 
need to retape the operations sequence when the choice of piviot rows or 
columns changed; i.e., the operation sequence would not depend on the 
argument values. This type of extension of the atomic operations could 
be used for any algorithm, not just matrix operations.







More information about the CppAD mailing list