Hi,
I have been setting up QChem (version 5.3) on a linux cluster (with Slurm) and IQmol on Macs and Windows to evaluate if we can use it for an undergraduate quantum chemistry course.
We managed to get iQmol to submit some simple jobs and run the job on the cluster (through Slurm), but we found several small issues with using iQmol (Please find the attached figures at the bottom):
-
All highlighted tabs on pop-up manuals have used the wrong color code (i.e. a white font over white background for dark mode) (See Fig 1)
-
Setting geometry constraints doesn’t seem to work: no effect after selecting it on the manual bar[18 June Update] OK, I figure out how to get it work now: need select the atoms first. My bad, sorry! -
The template Slurm script is not up to date:
a — “qchem -seq” is not accepted by qchem now. In addition, it may not be a reasonable assumption for running serial qchem nowadays. (See Fig 2)
b — Please provide some examples for users on how to change the Slurm script template, and how to load the module or qcenv.csh.
Please also list the internal variable, e.g. $NCPUS, $MEMORY, $QUEUE used in iQmol; users may have difficulty reconfiguring the Slurm script without this set of variables.[18 June Update] OK, I found them in the Help Browserc — Fig 3 is the Slurm template we used on iQmol (See Fig 3)
-
The job submission manual can be improved in several areas:
a — The pulldown manual for choosing the queue is not updated automatically: I created a new queue/partition for qchem on the server AFTER setting up the server information on iQmol; the new partition is not displayed (or it was hidden at the bottom of the non-scrollable pulldown manual). (See Fig 4)
To solve this issue, I have to define the queue and QOS explicitly in the Slurm template
b — For slurm users, besides the partitions (queues), they may also need to select a QOS (quality of service) which is related to the job priority and usage token accounting, but there is no way to select it from the manual. (See Fig 5a)
You may use this command to query the available QOS:
sacctmgr show qos format=name%15 -nc — Most of the HPC sever nodes have more than 100GB of memory, but the manual has restricted user from inputting >=100000MB or changing the units (See Fig 5b)
d — I know that MPI is not favorable in QChem developers, but I believe it is still supported for HF and DFT calculations; it seems that iQmol does not allow MPI jobs, and there is no way to set the number of nodes, and how MPI tasks are assigned in the submission manual. (See Fig 5c)
e — How can users use GPU version QChem with IQmol?
-
The Job Monitor is not able to retrieve the correct running status from Slurm. In addition. (See Fig 6)
I would suggest showing the scheduler’s Job ID at Job Monitor as well
[18 June Update] IQmol doesn’t keep the Slurm’s Job ID
I added the following lines in the Slurm template:
echo SLURM_JOB_ID=$SLURM_JOB_ID
echo SLURM_JOB_NAME=$SLURM_JOB_NAME
echo JOB_ID=${JOB_ID}
echo JOB_NAME=${JOB_NAME}
echo JOB_DIR=${JOB_DIR}And at the output/err file, the variable ${JOB_ID} is undefined
SLURM_JOB_ID=81885
SLURM_JOB_NAME=C2H4.run
JOB_ID=
JOB_NAME=C2H4
JOB_DIR=/scratch/chiensh/C2H4 -
Since Job Monitor has not been able to retrieve the correct job status, users cannot kill the jobs or copy the result until the job is finished. (See Fig 7)
-
I remember that I could see the live result (output file) with Job Monitor (View Output File) during the job running when it was running on my desktop (without Slurm), it will be a highly desirable feature if it is implemented for the jobs on a remote cluster.
-
I believe more and more Mac users will turn to use iPad, it will be very nice if IQmol can run on iPads.
-
Please find the figures below (It is not reasonable to allow only 1 picture for each message)
Thanks a lot!
Best Regards,
Dominic Chien