{chem}[intel/2017b] Dalton 2016#5808
Conversation
|
@akesandgren Are you up for giving this a quick review? |
| configopts = '-DCMAKE_BUILD_TYPE=RELEASE ' | ||
| configopts += '-DENABLE_MPI=ON ' | ||
| configopts += '-DENABLE_OMP=ON ' | ||
| configopts += '-DENABLE_64BIT_INTEGERS=ON ' |
There was a problem hiding this comment.
I'd avoid using 64bit ints for the uploaded recipy.
It's not compatible with most scalapack/blacs/lapack/blas builds.
| configopts += '-DENABLE_AUTO_BLAS=OFF ' | ||
| configopts += '-DENABLE_AUTO_LAPACK=OFF ' | ||
| configopts += '-DEXPLICIT_BLAS_LIB="$LIBBLAS" ' | ||
| configopts += '-DEXPLICIT_LAPACK_LIB="$LIBLAPACK" ' |
There was a problem hiding this comment.
You probably need
configopts += '-DBLACS_IMPLEMENTATION=intelmpi '
configopts += '-DENABLE_SCALAPACK=ON'
Not using scalapack will make it a fair bit slower.
There was a problem hiding this comment.
If you check the CMake files, you will see that ScaLAPACK/BLACS only works with MKL. Meanwhile enable 64 bit integers would work with MKL, ACLM out-of-the box, and you can easily make 64 bit integer version of OPENBLAS , and ATLAS. So I think the same should apply to ENABLE_64BIT_INTEGERS=ON and ENABLE_SCALAPACK=ON
|
Differences compared to #5778
I will fix |
|
I was wrong, |
|
@akesandgren are you ok with the scalapack changes and added comment on 64bit integers? (or maybe this one should have an |
| if(CMAKE_Fortran_COMPILER_ID MATCHES Intel) | ||
| add_definitions(-DVAR_IFORT) | ||
| - set(CMAKE_Fortran_FLAGS "-fpp -assume byterecl -DVAR_IFORT") | ||
| + set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fpp -DVAR_IFORT") |
There was a problem hiding this comment.
Missed this one last time around.
I'm fairly certain you have to keep -assume byterecl for Intel fortran
There was a problem hiding this comment.
@akesandgren Not necessarily, the DIRECT_IO_FACTOR can be 1 or 4 with or without byterecl. There is a setting for Dalton I forget where it is, i vaguely remember that. Anyway, if you use the wring model, `Dalton will not work at all.
|
It might be worth it to have the -i8 build have a versionsuffix specifying this, but since -i8 is the preferred way for dalton, one might set versionsuffix -i4 on the non-i8 builds... And -i8/4 is probably not the most informative suffix, but I don't know of any better at the moment. At the very least one should add some explanation to the module file. We never bothered building it with -i8 since there was never a reason to do it for our users. Other than that I have no objections to it. |
|
|
||
| configopts = '-DCMAKE_BUILD_TYPE=RELEASE ' | ||
| configopts += '-DENABLE_MPI=ON ' | ||
| configopts += '-DENABLE_OMP=ON ' |
There was a problem hiding this comment.
And if you enable OMP you should probably add openmp: True in toolchainopts?
|
Test report by @boegel |
|
Test report by @boegel |
|
Test report by @boegel |
|
Going in, thanks @hajgato! |
All (non-benchmark) test jobs were passed
Slightly different approach compared to #5778