Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gcc, OpenMP and Anaconda MKL issue #29

Closed
siudej opened this issue Apr 18, 2016 · 0 comments
Closed

gcc, OpenMP and Anaconda MKL issue #29

siudej opened this issue Apr 18, 2016 · 0 comments

Comments

@siudej
Copy link
Contributor

siudej commented Apr 18, 2016

It seems impossible to run OpenMP 4.0 code generated by gcc inside Anaconda with MKL in Linux. The issue is that MKL is linked against libiomp5, while gcc is using incompatible libgomp. This breaks task depend clauses.

When libgomp is imported before numpy , then depend clauses work, but MKL is no longer multithreaded.

Strangely, there is no conflict on Mac. Maybe Anaconda libiomp5 on Mac does not implement libgomp symbols at all, so the libraries can coexist?

Two possible fixes:

  • Forget depend and revert to taskwait. Then Floyd-Warshall will be slightly slower.
  • Switch to clang-3.8, which generates libiomp5 compatible code. Hopefully this does not break anything else.

In either case, we should use ctypes to import a shared library.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant