[Debichem-devel] Bug#935994: nwchem: NWChem compiled with long int lapack/blas interface?

Giacomo Mulas giacomo.mulas at inaf.it
Wed Aug 28 19:42:21 BST 2019


Package: nwchem
Version: 6.8.1-5
Severity: wishlist

Dear Maintainer,

I am a long time NWChem (ab)user.  I always have to compile NWChem myself,
instead of using the binary version provided by debian, because for large
enough molecules matrices become too big for the 32 bit int interface, and 
only run if NWChem was compiled with a 64 bit int lapack/blas.
I understand the need to provide a version of NWChem in debian that works
with free libs available in debian as well, hence the need (so far) to 
compile it using the 64 to 32 bit conversion of ints on 64 bit machines.
However, lapack and blas libs with 64 bit integer interfaces just appeared
on debian experimental, and have been available for some time in the 
non-free (but packaged in non-free) Intel MKL libs.
Apparently, this would require limited changes in the debian/rules file.
Would you consider building (also) such a version of nwchem, compiled with
long int blas/lapack libs? If you want to retain the current version, it 
could be a conflicting package with a slightly different name. 
Here are the environment variable definitions that would need to be included:

export BLAS_SIZE=8
export BLAS_LIB=-lmkl_blas95_ilp64 -Wl,--start-group -lmkl_gf_ilp64 -lmkl_intel_thread -lmkl_core -Wl,--end-group -liomp5 -lpthread -lm -ldl
export LAPACK_SIZE=8
export LAPACK_LIB=-lmkl_blas95_ilp64 -lmkl_lapack95_ilp64 -Wl,--start-group -lmkl_gf_ilp64 -lmkl_intel_thread -lmkl_core -Wl,--end-group -liomp5 -lpthread -lm -ldl
export USE_SCALAPACK=yes
export SCALAPACK_SIZE=8
export SCALAPACK_LIB=-lmkl_blas95_ilp64 -lmkl_lapack95_ilp64 -lmkl_scalapack_ilp64 -Wl,--start-group -lmkl_gf_ilp64 -lmkl_intel_thread -lmkl_core -lmkl_blacs_openmpi_ilp64 -Wl,--end-group -liomp5 -lpthread -lm -ldl
export SCALAPACK=-lmkl_blas95_ilp64 -lmkl_lapack95_ilp64 -lmkl_scalapack_ilp64 -Wl,--start-group -lmkl_gf_ilp64 -lmkl_intel_thread -lmkl_core -lmkl_blacs_openmpi_ilp64 -Wl,--end-group -liomp5 -lpthread -lm -ldl
export HAS_BLAS="yes"
export BLASOPT="-lmkl_blas95_ilp64 -lmkl_lapack95_ilp64 -lmkl_scalapack_ilp64 -Wl,--start-group -lmkl_gf_ilp64 -lmkl_intel_thread -lmkl_core -lmkl_blacs_openmpi_ilp64 -Wl,--end-group -liomp5 -lpthread -lm -ldl"
export BLACS=$(SCALAPACK)

and "make 64_to_32" and "make 32_to_64" would have to be commented out.

The libglobalarrays-dev package would also need to be compiled with the 
same lapack/blas/scalapack libs and int sizes (requiring 3 lines to be 
edited in the corresponding debian/rules).

Of course, I would be willing to help, even if I am not an official 
Debian Developer.

Thanks in advance, best regards
Giacomo Mulas



More information about the Debichem-devel mailing list