<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Mar 26, 2015 at 5:10 PM, David Knezevic <span dir="ltr"><<a href="mailto:david.knezevic@akselos.com" target="_blank">david.knezevic@akselos.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Mar 26, 2015 at 4:21 PM, Matthew Knepley <span dir="ltr"><<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><div>On Thu, Mar 26, 2015 at 1:48 PM, David Knezevic <span dir="ltr"><<a href="mailto:david.knezevic@akselos.com" target="_blank">david.knezevic@akselos.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Hi all,<div><br></div><div>I'm trying to configure PETSc using Intel's MKL and with --download-ml. Here is my configure line:</div><div><br></div><div>./configure --with-blas-lapack-dir=/opt/intel/composer_xe_2015/mkl/lib/intel64 --download-ml<br></div><div><br></div><div>I get an error when ML does "checking for dgemm". The configure.log is attached. I was wondering if anyone has any suggestions about how I can get this to work?</div></div></blockquote><div><br></div></div></div><div>We will need $PETSC_ARCH/externalpackages/ml-*/config.log to see where their test failed.</div></div></div></div></blockquote><div><br></div><div><br></div><div>I've attached this file.</div></div></div></div></blockquote><div><br></div><div>I do not understand the error:</div><div><br></div><div><div>configure:10865: mpicxx -o conftest  -Wall -Wwrite-strings -Wno-strict-aliasing -Wno-unknown-pragmas -g -O0   -fPIC   -DMPICH_SKIP_MPICXX -DOMPI_SKIP_MPICXX -I/usr/lib/openmpi/include -I/usr/lib/openmpi/include/openmpi -g -O2 -I/usr/lib/openmpi/include -I/usr/lib/openmpi/include/openmpi  conftest.cpp -Wl,-rpath,/opt/intel/composer_xe_2015/mkl/lib/intel64 -L/opt/intel/composer_xe_2015/mkl/lib/intel64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lpthread -lm -Wl,-rpath,/usr/lib/openmpi/lib -L/usr/lib/openmpi/lib -Wl,-rpath,/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/usr/lib/gcc/x86_64-linux-gnu/4.8 -Wl,-rpath,/usr/lib/x86_64-linux-gnu -L/usr/lib/x86_64-linux-gnu -Wl,-rpath,/lib/x86_64-linux-gnu -L/lib/x86_64-linux-gnu -lmpi_f90 -lmpi_f77 -lgfortran -lm -Wl,-rpath,/usr/lib/openmpi/lib -Wl,-rpath,/usr/lib/gcc/x86_64-linux-gnu/4.8 -Wl,-rpath,/usr/lib/x86_64-linux-gnu -Wl,-rpath,/lib/x86_64-linux-gnu -lgfortran -lm -lquadmath -lm   -L/usr//lib -L/usr/lib/openmpi/lib -L/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../.. -lmpi_f90 -lmpi_f77 -lmpi -ldl -lhwloc -lgfortran -lm -lquadmath -lpthread >&5</div><div>/opt/intel/composer_xe_2015/mkl/lib/intel64/libmkl_core.so: undefined reference to `logf'</div><div>/opt/intel/composer_xe_2015/mkl/lib/intel64/libmkl_core.so: undefined reference to `atan2'</div><div>/opt/intel/composer_xe_2015/mkl/lib/intel64/libmkl_core.so: undefined reference to `sin'</div><div>/opt/intel/composer_xe_2015/mkl/lib/intel64/libmkl_core.so: undefined reference to `fabs'</div><div>/opt/intel/composer_xe_2015/mkl/lib/intel64/libmkl_core.so: undefined reference to `exp'</div><div>/opt/intel/composer_xe_2015/mkl/lib/intel64/libmkl_core.so: undefined reference to `cos'</div><div>/opt/intel/composer_xe_2015/mkl/lib/intel64/libmkl_core.so: undefined reference to `sqrt'</div><div>/opt/intel/composer_xe_2015/mkl/lib/intel64/libmkl_intel_lp64.so: undefined reference to `log'</div><div>/opt/intel/composer_xe_2015/mkl/lib/intel64/libmkl_core.so: undefined reference to `pow'</div><div>/opt/intel/composer_xe_2015/mkl/lib/intel64/libmkl_core.so: undefined reference to `log10'</div><div>/opt/intel/composer_xe_2015/mkl/lib/intel64/libmkl_core.so: undefined reference to `ceil'</div><div>/opt/intel/composer_xe_2015/mkl/lib/intel64/libmkl_core.so: undefined reference to `expf'</div><div>collect2: error: ld returned 1 exit status</div></div><div><br></div><div>Clearly these symbols should be in -lm, which is in the link line, and it linked when we tried in our configure. Can</div><div>you run this link line manually and figure out what is wrong?</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>However, MKL is almost never worth it.</div><div><br></div></div></div></div></blockquote><div><br></div><div>OK, interesting, why not? The reason I'm using MKL in this case is because I found that the direct solvers MUMPS and SuperLU were surprising slow on a Haswell server. After rebuilding PETSc with MKL, these solvers were more than 3x faster in some cases.</div></div></div></div></blockquote><div><br></div><div>Yes, direct solvers use BLAS2/3 and can benefit, but then I would just build GotoBLAS or something easy</div><div>rather than the crazy hell that is MKL.</div><div><br></div><div>  Thanks,</div><div><br></div><div>    Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class=""><font color="#888888"><div>David</div><div><br></div><div><br></div><div><br></div></font></span></div><br></div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature">What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div>
</div></div>