[ADOL-C] Building ADOL-C with OpenMP-support

Kshitij Kulshreshtha kshitij at math.upb.de
Tue Aug 9 07:45:12 EDT 2011


Hello again,

I have made some changes in ADOL-C that should allow openmp to work with
the new version too. Could you please test the svn trunk at
https://projects.coin-or.org/svn/ADOL-C/trunk

Please report any problems you encounter.

Thanks and regards.

Kshitij.

As on 2011-07-16 10:26, Wolfgang Lorenz did write:
> Hi there,
> 
> Am Fri, 15 Jul 2011 09:59:12 +0200
> schrieb Kshitij Kulshreshtha <kshitij at math.upb.de>:
> 
>> Hello,
>>
>> As on 2011-07-13 17:09, Wolfgang Lorenz did write:
>>> Hello list readers,
>>>
>>>
>>> I just wanted to test the last stable version (2.2.0) of ADOL-C with
>>> OpenMP support. The manual stated to configure ADOL-C using the
>>> option
>>>
>>>     --with-openmp-flag=<flag>
>>>
>>> In case of gcc that's "-fopenmp", which is working fine with other
>>> projects. However, the build process ends with:
>>>
>>>     In file included from odedrivers.c:20:0:
>>>     ../../../ADOL-C/src/taping_p.h:297:2: error: #error nicht hier
>>>
>>> The compiler error is still present in the trunk of ADOL-C svn. The
>>> context in taping_p.h reads:
>>>
>>>          [...]
>>>     296  #if defined(_OPENMP)
>>>     297  #error nicht hier
>>>          [...]
>>>
>>> Is OpenMP currently not supported, is this a bug or did I miss
>>> something?
>>
>> Going from ADOL-C versions 2.1.* to 2.2.* we incorporated a new
>> internal memory manager. This has caused several things to break,
>> including OpenMP. Unfortunately for us the new memory manager was
>> written by a colleague who is not involved in actively developing
>> ADOL-C, so this #error is a programming relic which went uncommented
>> and undetected until now. After some testing I found that the
>> parallel initialization functions have not been ported to the new
>> memory manager, which is why it was disabled.
>>
>> Please fallback to ADOL-C 2.1.12 for using openMP for now. I'll work
>> on getting it to run with the new version soon.
> 
> This is compiling all right, thank you. Just a short notice, though:
> When you try to compile ADOL-C 2.1.12 with OpenMP-Support AND the
> system doesn't provide the automake tools, compiling fails with: 
> 
>     [...]
>     Making all in test
>     make[3]: Entering directory `/tmp/adolc/ADOL-C-2.1.12/ADOL-C/test'
>     ../../doltlibtool --tag=CXX   --mode=link g++  -g -O2   -o powexam powexam.o ../src/libadolc.la  -lm 
>     libtool: link: g++ -g -O2 -o .libs/powexam powexam.o  ../src/.libs/libadolc.so -lm -Wl,-rpath -Wl,/home/wolfgang/adolc_base/lib64
>     ../src/.libs/libadolc.so: undefined reference to `omp_get_num_threads'
>     ../src/.libs/libadolc.so: undefined reference to `omp_get_thread_num'
>     [...]
> 
> It helps to add the lines
> 
>     AM_CFLAGS               = @ac_adolc_cflags@
>     AM_CXXFLAGS             = @ac_adolc_cxxflags@
> 
> to ADOL-C/test/Makefile.am before creating the configure script. (I
> attached a patch against current SVN trunk.)
> 
> 
> Cheers,
>   Wolfgang Lorenz
> 
> 
> 
> _______________________________________________
> ADOL-C mailing list
> ADOL-C at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/adol-c

-- 
Dr. Kshitij Kulshreshtha

Institut für Mathematik,
Universität Paderborn,
Warburger Straße 100,
33098 Paderborn.

Büro: A3.235

Privatanschrift:
Arnikaweg 62
33100 Paderborn.



More information about the ADOL-C mailing list