Bob does not compile with Anaconda accelerate

22 views
Skip to first unread message

Amir Mohammadi

unread,
Feb 9, 2016, 11:32:20 AM2/9/16
to bob-devel
So I tried to compile bob with anaconda accelerate but it gave me this error:
/usr/bin/ld: cannot find -lmkl_lapack95_lp64

Someone also had a similar problem:
https://stackoverflow.com/questions/31667049/linking-anaconda-mkl-to-c-cython-program

What do you think?

but Bob compiled fine when I tried anaconda without anaconda accelerate.

André Anjos

unread,
Feb 9, 2016, 11:59:51 AM2/9/16
to bob-...@googlegroups.com
Bob uses whatever NumPy was setup to use, so it is compatible.

Are the MKL so libraries distributed with Anaconda so you can link against those?

If so, then there may be a way out.

Cheers, A

--
-- You received this message because you are subscribed to the Google Groups bob-devel group. To post to this group, send email to bob-...@googlegroups.com. To unsubscribe from this group, send email to bob-devel+...@googlegroups.com. For more options, visit this group at https://groups.google.com/d/forum/bob-devel or directly the project website at http://idiap.github.com/bob/
---
You received this message because you are subscribed to the Google Groups "bob-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bob-devel+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Dr. André Anjos
Idiap Research Institute
Centre du Parc - rue Marconi 19
CH-1920 Martigny, Suisse
Phone: +41 27 721 7763
Fax: +41 27 721 7712
http://andreanjos.org

Laurent ES

unread,
Feb 9, 2016, 12:29:39 PM2/9/16
to bob-...@googlegroups.com
Hello,

AFAIK, the redistribution policy of the Intel MKL has restrictions and you can't build additional software like Bob against the Intel MKL without a proper Intel MKL installation / license, which Anaconda can't legally provides (See the comment from Travis here, who is the original author of Numpy and one of the main guys behind Anaconda). I'm unsure how this is technically achieved (here are the MKL files that Anaconda can redistribute: https://software.intel.com/en-us/articles/redistribution-of-application-binaries-built-for-linux)

The proper way to fix this using Anaconda would be to ask Anaconda maintainers to build, link, integrate and distribute Bob with Anaconda.
Otherwise, Idiap should have few Intel MKL licenses if I remember correctly. But for a proper build, you would need to use the exact same version against which your Anaconda distribution was built.
Another alternative would be to build your own environment (inclusive NumPy and SciPy) from scratch (getting rid of Anaconda), linking against the Intel MKL whenever needed.

Cheers,
Laurent

Laurent ES

unread,
Feb 9, 2016, 12:33:20 PM2/9/16
to bob-...@googlegroups.com
P.S.: I've forgotten to mention that this is all caused by the direct C++ dependencies of Bob to Blas/LAPACK.

André Anjos

unread,
Feb 10, 2016, 1:28:17 AM2/10/16
to bob-...@googlegroups.com
Here are a few solutions which we could work on:

1) Given Amir's interest is being able to write fast code in Python, we could add numpy+MKL and numba/pypy to our bob-stable builds. The advantage of this approach is that this would be reusable on the BEAT platform as well. The issue is to find a valid MKL license to use at Idiap.

2) To have a conda install, we could create a shared cloud named "bob" on "anaconda.org" containing our packages, adding all other C++ dependencies which would be required. The list of dependencies to install are clearly marked here: https://github.com/idiap/bob/wiki/Dependencies
As I understand from discussions though, this would have to be done against ATLAS rather than from MKL, at least by default.

Cheers, A

Amir Mohammadi

unread,
Feb 11, 2016, 4:04:43 AM2/11/16
to bob-devel
Intel offers free licenses for MKL:
https://software.intel.com/en-us/qualify-for-free-software
I think "open source contributor" would be a good option.

André Anjos

unread,
Feb 11, 2016, 4:08:37 AM2/11/16
to bob-...@googlegroups.com
Ok, let's download it for tests. Please place it at:

/idiap/group/torch5spro/mkl/<version>

A
Reply all
Reply to author
Forward
0 new messages