I defined to memory but many times It has given to the problem as an out of memory and my calculation has not been able to complete.
I tried to so many things but I haven’t any idea what is wrong. I got this error with PBE, WB97X-D and BLYP.
It was only completed with PM3.
I am trying to apply QM/MM
Do you have any idea what I need to do about “out of memory”?
How big is your QM system?
Seems like you are using cluster with slurm.
What is your run setup: how many cores, nodes, etc you are trying to use?
Some clusters want to explicitly mention how much memory you want to use, try --mem-per-cpu= option of sbatch.
I have specified 1024MB (1GB) of memory. Is this per task, per core, for all the processes combined, or counted in yet some other way? I didn’t understand. Also, how does CP2K handle memory? Is there a shared memory for all threads (like Gaussian, which has a single process), or does it actually run as a bunch of separate processes (Turbomole is built this way, for a different kind of example)? I need a deeper technical understanding of the memory requirements and architecture –from CP2K. Can you help me, please?
I was trying to apply this tutorial
I’m sure I’m doing something wrong, but I don’t know which one. I am sharing with you my all files.
--mem is for all processes in total, but you need to setup it for each process with --mem-per-cpu=1G
You are trying to run ssmp (cp2k-8.2-Linux-x86_64.ssmp, which is OpenMP without MPI) version of CP2K with srun. It results in running several separate tasks, which will conflict to each other. Correct would be to use psmp (cp2k-8.2-Linux-x86_64.psmp, which is MPI+OpenMP) version of CP2K.
But then you are using srun like that: srun -n 24 while request was for 4 tasks only, it is inconsistent.
If you want to use --cpus-per-task=2 then setup then put export OMP_NUM_THREADS=2 instead of 1
Also, how does CP2K handle memory? Is there a shared memory for all threads (like Gaussian, which has a single process), or does it actually run as a bunch of separate processes (Turbomole is built this way, for a different kind of example)?
SSMP version of CP2K runs 1 process then whole memory will be allocated within that process.
PSMP version can run several processes in MPI then each process will have its own memory, which is not shared.
What was in your ./install_cp2k_toolchain.sh command line?
What was in your make command line?
It is really hard to track down what is wrong in the procedure without access to the cluster. I could suggest you to contact cluster administrators. They for sure could help you much better with compiling CP2K for you particular cluster (maybe they have it already installed?)