-
Notifications
You must be signed in to change notification settings - Fork 1
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
Unable to compile GAMESS with Intel Compilers, fails for ddi_fortran.c #42
Comments
Windows support trails behind that of Linux. As of right now, Windows support PGI 19.4 and Intel 2011. So in order to compile GAMESS on Windows with the latest Intel OneAPI compiler you will need to put in some effort on your own. |
I will also add that we have pre-compiled Windows binaries available (unified binaries built with PGI 19.4). |
I was able to make the compilation work by making several changes. First of all, the compilation of ddi/src/ddi_fortran.c runs into an error due to namespace collision of the DDI operations and fortran method names. I can see from the ddi/src/ddi.h file that several other operations like This means the operation name has to be changed (so that on Windows with ifort, the name In ddi/src/ddi_fortran.c (line 378) This allows the ddi compilation to run successfully. There are many other issues in the compile scripts, which has to be fixed for the newer version of the compilers:
After all of this, GAMESS should compile successfully without any problem with the recent Intel Compilers. I have not been able to run all of the tests, but I have ran a few tests from rhf, uhf, rimp2grd-mpiomp and ricc-mpiomp folders. All of the tests so far have ran succesfully. (Note: Intel's openMP library libiomp5md.dll has to be in the same folder as the gamess executable to run the binary. For windows x64 and Intel oneAPI kit, the dll file is located in C:\Program Files (x86)\Intel\oneAPI\compiler\latest\windows\redist\intel64_win\compiler\ ) As far as I can tell, the changes I have made in the files should not interfere with compilation with any other compiler and/or any other platform. I don't have access to the main gamess repository, but I hope that one of the developers would be able to fix these issues in the main source code. I understand that most users of computational code users use linux, but there are a lot of windows users too, and if the code can run on windows, it should. A copy of the modified versions of the files are here (.txt extension added because github does not support the normal extensions) : |
Thank you very much for this info and the updates for Intel support on Windows! |
Could you please provide your full name and affiliation so that I can credit you for your effort in the GAMESS release notes? |
Thanks! My name is Shoubhik R Maiti and I am a student in the University of Sheffield. Another thing, I have also managed to make the libxc interface of GAMESS work on windows with Intel compilers. If I write it here, would that be helpful? |
@shoubhikraj yes! that would be very helpful. Thank you. |
install.info.txt
I tried to compile the GAMESS binary with Intel Compilers on Windows natively. I know that the precompiled executable is available, but it is not compiled with openMP, so RI-CCSD does not work. Besides, the Intel MKL is quite faster on Intel chips than PGI-BLAS, which is what the precompiled binary is built with.
I followed the instructions in gamess/machines/readme.microsoft.
I ran
./config
then configured it for Windows with Intel compilers. Then I rancd ddi; ./compddi
. Here the compilation crashed:Description of the run environment:
operating system : Windows 10
compiler : Intel C++ compiler classic (icl.exe), Intel Fortran compiler classic (ifort.exe) provided by Intel oneAPI v2021.1
math library : Intel MKL (v2021.1)
communication library : MS-MPI
A copy of your install.info file : attached
The text was updated successfully, but these errors were encountered: