[ADOL-C] Problem with installing ADOL-C with OpenMP and using it
theo.galyfajou at gmail.com
Sat Mar 5 06:19:20 EST 2016
First thanks a lot for your work on this fantastic library and the really
good documentation. I have a few questions about the use of ADOL-C combined
I am trying to use ADOL-C for a neural network for an auto-encoder, meaning
there are quickly a lot of parameters to deal with. To shorten the
computation time I wanted to parallelize the process as I am computing
batch of datapoints independently. However I am not sure if it is possible
since there is only one taping, can multiple thread access the same tape at
the same time? If not what would you suggest.
Anyway I tried to install ADOL-C with the OpenMP with the -fopenmp flag,
configuration was fine but when using make I got
In file included from tape_handling.cpp:15:0:
tape_handling.cpp: In constructor 'Keeper::Keeper()':
taping_p.h:372:47: error: 'ADOLC_threadNumber' was not declared in this
#define ADOLC_GLOBAL_TAPE_VARS globalTapeVars[ADOLC_threadNumber]
tape_handling.cpp:1021:17: note: in expansion of macro
if (ADOLC_GLOBAL_TAPE_VARS.initialStoreSize >
Makefile:618: recipe for target 'tape_handling.lo' failed
I solved it by declaring
right after the
But I am not sure this is the right solution (anyway it compiles).
Finally, I copied the example and included
and added #pragma omp parallel ADOLC_OPENMP
It compiles but when running I get :
Symbol lookup error : undefined symbol :
By the way I am using gcc for compiling and Code::Blocks for the IDE.
Thanks for your help!
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the ADOL-C