Intel® MPI Library
Get help with building, analyzing, optimizing, and scaling high-performance computing (HPC) applications.

mpitune Relies on Old OpenSSL

Ben3
Beginner
446 Views

Hi,

One of our users has reported a problem with the mpitune utility included with Intel MPI v5.0.2.044. In particular, it appears that the hashlib module it uses is linked against an old version of OpenSSL that is not available in our CentOS 6 operating system:

10:20 bjm900@raijin7 ~ > ldd /apps/intel-mpi/5.0.2.044/intel64/bin/tune/_hashlib.so 
	linux-vdso.so.1 =>  (0x00007fff739ff000)
	libssl.so.6 => not found
	libcrypto.so.6 => not found
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fe5884ce000)
	libc.so.6 => /lib64/libc.so.6 (0x00007fe58813a000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fe588908000)

The libraries that we have are several ABI revisions ahead of the ones linked against here.

10:25 bjm900@raijin7 ~ > ls /usr/lib64/libssl.so*
/usr/lib64/libssl.so  /usr/lib64/libssl.so.1.0.1e  /usr/lib64/libssl.so.10
10:25 bjm900@raijin7 ~ > ls /usr/lib64/libcrypto.so*
/usr/lib64/libcrypto.so  /usr/lib64/libcrypto.so.1.0.1e  /usr/lib64/libcrypto.so.10

Because it can't bring in this hashlib module properly, attempting to run mpitune produces these errors:

ERROR:root:code for hash md5 was not found.
Traceback (most recent call last):
  File "/p/pdsd/Intel_MPI/Software/Python/python-2.7.2-linux-intel64-rhel5.7/lib/python2.7/hashlib.py", line 139, in <module>
  File "/p/pdsd/Intel_MPI/Software/Python/python-2.7.2-linux-intel64-rhel5.7/lib/python2.7/hashlib.py", line 91, in __get_builtin_constructor
ValueError: unsupported hash type md5

and similarly for sha1, sha224, sha256, sha384, sha512.

Is it possible to get a build of mpitune that links against the newer 1.0.x versions of OpenSSL?

Thanks,
Ben

0 Kudos
1 Reply
Artem_R_Intel1
Employee
446 Views

Hi Ben,
Thanks for the reporting. It's a known issue which will be fixed in the future Intel MPI Library releases.
As a possible workaround you can try to create symbolic links for the unresolved libssl/libcrypto libraries using the ones available on the system.

0 Kudos
Reply