Compiling GAMESS-v2020.2 with Intel MPI

GAMESS Download Site can be found at https://www.msg.chem.iastate.edu/GAMESS/download/dist.source.shtml

Compiling GAMESS

% tar -zxvf gamess-current.tar.gz
% cd gamess
% ./config

You have to answer the following question on

  • Machine Type? – I chose “linux64
  • GAMESS directory? -I chose “/usr/local/gamess
  • GAMESS Build Directory – I chose “/usr/local/gamess
  • Version? [00] – I chose default [00]
  • Choice of Fortran Compilers – I chose “ifort”
  • Version Number of ifort – I chose “18” (You can check by issuing the command ifort -V)
  • Standard Math Library – I chose “mkl”
  • Path of MKL – I chose “/usr/local/intel/2018u3/compilers_and_libraries_2018.3.222/linux/mkl
  • Type “Proceed” next
  • Communication Library – I chose “mpi” (I’m using Infiniband)
  • Enter MPI Library – I chose “impi
  • Enter Location of impi – I chose “/usr/local/intel/2018u3/impi/2018.3.222
  • Build experimental support of LibXC – I chose “no
  • Build Beta Version of Active Space CCT3 and CCSD3A – I chose “no
  • Build LIBCCHEM – I chose “no
  • Build GAMESS with OpenMP thread support – I chose “yes”

Once done, you should see

Your configuration for GAMESS compilation is now in
     /usr/local/gamess/install.info
Now, please follow the directions in
     /usr/local/gamess/machines/readme.unix

Compiling ddi

Edit DDI Node Sizes by editing /usr/local/gamess/ddi/compddi
Look at Line 90 and 91. You may want to edit MAXCPUS and MAXNODES. Once done, you can compile ddi

% ./compddi >& compddi.log &

Compiling GAMESS

The compilation will take a while. So relax…..

% ./compall >& compall.log &

Linking Executable Form of GAMESS with the command

./lked gamess 01 >& lked.log &

Edit the Scratch Directory setting at rungms

% vim rungms
set SCR=/scratch/$USER

Finding Top Processes using Highest Memory and CPU Usage in Linux

Read this Article from Find Top Running Processes by Highest Memory and CPU Usage in Linux. This is a quick way to view processes that consumed the largest RAM and CPU

ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head
   PID   PPID CMD                         %MEM %CPU
414699 414695 /usr/local/ansys_inc/v201/f 20.4 98.8
 30371      1 /usr/local/pbsworks/pbs_acc  0.2  1.0
 32241      1 /usr/local/pbsworks/pbs_acc  0.2  4.0
 30222      1 /usr/local/pbsworks/pbs_acc  0.2  0.6
  7191      1 /usr/local/pbsworks/dm_exec  0.1  0.8
 30595      1 /usr/local/pbsworks/pbs_acc  0.1  3.1
 30013      1 /usr/local/pbsworks/pbs_acc  0.1  0.3
 29602  29599 nginx: worker process        0.1  0.2
 29601  29599 nginx: worker process        0.1  0.3

The -o is to specify the output format. The -e is to select all processes. In order to sort in descending format, it hsould be –sort=%mem

Interesting.