<div dir="ltr"><div style><font face="Calibri" size="3">Oh I can see, how about GotoBlas2?</font></div><div style><font face="Calibri" size="3">do you know what should I enter after ../configure to build IPopt with that?</font></div>
<div class="gmail_extra"><br><div class="gmail_quote">On Sat, May 18, 2013 at 7:09 AM, Tony Kelman <span dir="ltr"><<a href="mailto:kelman@berkeley.edu" target="_blank">kelman@berkeley.edu</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 dir="ltr">
<div style="font-size:12pt;font-family:Calibri">
<div>There are several errors here. The “multiple definition of
‘_Unwind_SjLj_Unregister’” and similar are because you need to add
-static-libgcc to ADD_FFLAGS, so you should have ADD_FFLAGS=”-fopenmp
-static-libgcc”.</div>
<div> </div>
<div>I don’t think MKL supports using MinGW gcc/gfortran on Windows. The _intel_
in those library names indicates they are the versions intended for use with the
Intel compilers. Does Windows MKL include library versions named _gnu_ or
_mingw_ or anything to that effect? A quick Google search indicates that
__security_check_cookie and __GSHandlerCheck come from Visual Studio. You may
need to find and link against bufferoverflowu.lib and/or gshandler.obj, if you
can find those files anywhere on your system.</div>
<div> </div>
<div>-Tony</div>
<div> </div>
<div style="font-size:small;font-style:normal;text-decoration:none;font-family:Calibri;display:inline;font-weight:normal">
<div style="font-style:normal;font-variant:normal;font-weight:normal;font-size:10pt;line-height:normal;font-family:tahoma">
<div> </div>
<div style="background-color:rgb(245,245,245)">
<div><b>From:</b> <a title="bakhtvar@gmail.com" href="mailto:bakhtvar@gmail.com" target="_blank">Mostafa.B</a> </div>
<div><b>Sent:</b> Friday, May 17, 2013 2:25 PM</div><div class="im">
<div><b>To:</b> <a title="kelman@berkeley.edu" href="mailto:kelman@berkeley.edu" target="_blank">Tony Kelman</a> </div>
<div><b>Cc:</b> <a title="ipopt@list.coin-or.org" href="mailto:ipopt@list.coin-or.org" target="_blank">ipopt@list.coin-or.org</a> </div>
<div><b>Subject:</b> Re: [Ipopt] Multiple Cores</div></div></div></div>
<div> </div></div><div><div class="h5">
<div style="font-size:small;font-style:normal;text-decoration:none;font-family:Calibri;display:inline;font-weight:normal">
<div dir="ltr">I just figured out that the_dll libraries should be found so using
the below I configured IPopt successfully
<div> </div>
<div>
<div style="font-family:calibri;font-size:16px">../configure
ADD_FFLAGS=-fopenmp \</div>
<div style="font-family:calibri;font-size:16px">
--with-blas=”-L/C/Intel/COMPOS~1/mkl/lib/intel64 \</div>
<div style="font-family:calibri;font-size:16px"> -lmkl_intel_lp64_dll
-lmkl_intel_thread_dll -lmkl_core_dll \</div>
<div style="font-family:calibri;font-size:16px">
-Wl,--rpath,/C/Intel/COMPOS~1/mkl/lib/intel64” \</div>
<div style="font-family:calibri;font-size:16px">
--with-lapack=”-L/C/Intel/COMPOS~1/mkl/lib/intel64 \</div>
<div style="font-family:calibri;font-size:16px"> -lmkl_intel_lp64_dll
-lmkl_intel_thread_dll -lmkl_core_dll \</div>
<div style="font-family:calibri;font-size:16px">
-Wl,--rpath,/C/Intel/COMPOS~1/mkl/lib/intel64”</div></div>
<div class="gmail_extra"> </div>
<div class="gmail_extra">but when I ran "make" I got an error, bad reloc address
0x1 in section '.text[dgetrf].</div>
<div class="gmail_extra"> </div>
<div class="gmail_extra">I have also attached the screenshot showing the
error.</div>
<div class="gmail_extra"> </div>
<div class="gmail_extra">any suggestions?</div>
<div class="gmail_extra"> </div>
<div class="gmail_extra">Regards</div>
<div class="gmail_extra"> </div>
<div class="gmail_extra">-Mosy</div>
<div class="gmail_extra"> </div>
<div class="gmail_extra"><img alt="Inline image 1" src="cid:EC3F8A56A6B849E2A59840C564661193@TKsamsung"><br></div>
<div class="gmail_extra">
<div> </div>
<div class="gmail_quote">On Fri, May 17, 2013 at 12:28 PM, Mostafa.B <span dir="ltr"><<a href="mailto:bakhtvar@gmail.com" target="_blank">bakhtvar@gmail.com</a>></span> wrote:<br>
<blockquote style="border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid;margin:0px 0px 0px 0.8ex;padding-left:1ex" class="gmail_quote">
<div dir="ltr">Hi,
<div> </div>
<div>I just tried what you said in Windows 8 64 bit, MingW64 as below:</div>
<div> </div>
<div>
<div style="font-family:calibri;font-size:16px">../configure
ADD_FFLAGS=-fopenmp \</div>
<div style="font-family:calibri;font-size:16px">
--with-blas=”-L/C/Intel/COMPOS~1/mkl/lib/intel64 \</div>
<div style="font-family:calibri;font-size:16px"> -lmkl_intel_lp64
-lmkl_intel_thread -lmkl_core \</div>
<div style="font-family:calibri;font-size:16px">
-Wl,--rpath,/C/Intel/COMPOS~1/mkl/lib/intel64” \</div>
<div style="font-family:calibri;font-size:16px">
--with-lapack=”-L/C/Intel/COMPOS~1/mkl/lib/intel64 \</div>
<div style="font-family:calibri;font-size:16px"> -lmkl_intel_lp64
-lmkl_intel_thread -lmkl_core \</div>
<div style="font-family:calibri;font-size:16px">
-Wl,--rpath,/C/Intel/COMPOS~1/mkl/lib/intel64”</div>
<div style="font-family:calibri;font-size:16px"> </div>
<div style="font-family:calibri;font-size:16px">but I get configuration
error: BLAS doesn't work</div>
<div style="font-family:calibri;font-size:16px"> </div>
<div style="font-family:calibri;font-size:16px">-Mosy</div></div></div>
<div>
<div>
<div class="gmail_extra"><br><br>
<div class="gmail_quote">On Mon, May 13, 2013 at 10:28 AM, Tony Kelman <span dir="ltr"><<a href="mailto:kelman@berkeley.edu" target="_blank">kelman@berkeley.edu</a>></span> wrote:<br>
<blockquote style="border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid;margin:0px 0px 0px 0.8ex;padding-left:1ex" class="gmail_quote">
<div dir="ltr">
<div dir="ltr">
<div style="font-family:Calibri;font-size:12pt">
<div>Quick correction. In my last email when I said “Here’s how I most
recently configured Ipopt to use sequential MKL,” that was actually what I
used for mulithreaded MKL, sorry.</div>
<div> </div>
<div>And regarding use with MA86 or MA97, be sure you compile them with
OpenMP support (hence the FFLAGS=-fopenmp, assuming gfortran compiler). You
control the number of threads used by an OpenMP solver (MA86, MA97, and
Pardiso) by setting the environment variable OMP_NUM_THREADS.</div>
<div> </div>
<div>
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">If
you’re using the bash shell, you set an environment variable as follows
(example for 4 threads):</div></div></div>
<div>
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">export
OMP_NUM_THREADS=4</div></div></div>
<div>
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none"> </div></div></div>
<div>
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">With
C shell, the corresponding command is:</div></div></div>
<div>
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">setenv
OMP_NUM_THREADS 4</div></div></div>
<div>
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none"> </div></div></div>
<div>
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">When
you use both multithreaded MKL and a multithreaded linear solver, you should
control the number of threads used by MKL specifically with the
MKL_NUM_THREADS environment variable, otherwise it will use the
OMP_NUM_THREADS setting (which may not be what you want, if you’ve got a
parallel linear solver calling parallel BLAS).</div></div></div>
<div>
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none"> </div></div></div>
<div>
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">WSMP
uses pthreads rather than OpenMP, so you control the number of threads used
with that solver by an Ipopt option wsmp_num_threads instead of an
environment variable.</div></div></div>
<div>
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none"> </div></div></div>
<div>
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">One
thing I’ve noticed when running Ipopt with a parallel linear solver is the
“Total CPU secs in IPOPT” will be higher than the wall time (multiple CPU’s
are being used, so I guess it means what it says). With
print_timing_statistics set to yes you will get the CPU time, system time,
and wall time all broken down.</div></div></div><span><font color="#888888">
<div>
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none"> </div></div></div>
<div>
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">-Tony</div></div></div>
<div>
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none">
<div style="font-style:normal;display:inline;font-family:Calibri;font-size:small;font-weight:normal;text-decoration:none"></div> </div></div></font></span></div></div></div></blockquote></div>
<div> </div></div></div></div></blockquote></div>
<div> </div></div></div></div></div></div></div></div></div>
</blockquote></div><br></div></div>