Hi, It is likely that grompp is trying to use all the available memory, and failing shortly after unsuccessfully allocating an array whose size is related to the number of particles. If so, we'd love to make that work better for you. (We know a place where grompp is inefficient because we allocate memory proportional to the square of the number of atom types, but that is likely not the issue here!) If you can open an issue at https://redmine.gromacs.org and upload your inputs, we can advise further and/or find a fix once we see exactly where the problem occurs.
Mark On Thu., 18 Jul. 2019, 13:41 (학생) 박세영 (에너지및화학공학부), <[email protected]> wrote: > Dear all, > I am trying to run large coarse-grained biomolecular system which includes > about 800million beads in it. (about 500million among them are water > beads). The .gro file of my system is about 35.62GB. The problem is, that > although I’m trying to run grompp command to make input .tpr file, I > continuously get this not enough memory error: > > =========================================================================================== > . > . > Excluding 1 bonded neighbours molecule type 'W' > Excluding 1 bonded neighbours molecule type 'WF' > Excluding 1 bonded neighbours molecule type 'W' > Excluding 1 bonded neighbours molecule type 'WF' > Removing all charge groups because cutoff-scheme=Verlet > > ------------------------------------------------------- > Program gmx_mpi, VERSION 5.0.6 > Source code file: > /scratch/x1671a04/gromacs/gromacs-5.0.6/src/gromacs/utility/smalloc.c, > line: 224 > > Fatal error: > Not enough memory. Failed to realloc -6970315816 bytes for b->a, > b->a=ceb96010 > (called from file > /scratch/x1671a04/gromacs/gromacs-5.0.6/src/gromacs/gmxlib/index.c, line > 153) > For more information and tips for troubleshooting, please check the GROMACS > website at http://www.gromacs.org/Documentation/Errors > ------------------------------------------------------- > : Cannot allocate memory > Halting program gmx_mpi > > =========================================================================================== > > > or this segmentation fault error: > > =========================================================================================== > . > . > Excluding 1 bonded neighbours molecule type 'WF' > Excluding 1 bonded neighbours molecule type 'W' > Excluding 1 bonded neighbours molecule type 'NA' > Excluding 1 bonded neighbours molecule type 'WF' > > NOTE 2 [file 11_billion.top, line 372]: > System has non-zero total charge: 22320.000000 > Total charge should normally be an integer. See > http://www.gromacs.org/Documentation/Floating_Point_Arithmetic > for discussion on how close it should be to an integer. > > > Removing all charge groups because cutoff-scheme=Verlet > /var/spool/slurm/d/job06849/slurm_script: line 10: 36729 Segmentation > fault (core dumped) gmx_mpi grompp -f minimization.mdp -c > 11_billion.gro -p 11_billion.top -o 11_billion.tpr > > =========================================================================================== > > > The gromacs version that I’m using is 5.0.6. I tried gromacs version of > 5.0.6 and 2018.3, and grompp by double and single, but both did not work. > This is my command line : gmx_mpi grompp -f minimization.mdp -c > waterbox_for100billion.gro -p 800_billions_only_water_box.top -o test.tpr > I’m running grompp command in CPU node which has 768GB of memory. I tried > to find any method to generate .tpr file with parallel calculation, but I > couldn’t, so I had to grompp the system in node with very large memory. > However, when I tracked my memory usage during grompp, the maximum memory > usage was only about 20% of total available memory. Therefore, I guess it > may not be the problem of memory shortage. > > The .mdp file that I used in grompp is for minimization, and the contents > are like this: > > define = -DPOSRES > integrator = steep > dt = 0.01 > nsteps = 25000 > nstcomm = 100 > comm-grps = > > nstxout = 0 > nstvout = 0 > nstfout = 0 > nstlog = 1000 > nstenergy = 1000 > nstxout-compressed = 0 > compressed-x-precision = 100 > compressed-x-grps = > nstpcouple = 1 > energygrps = system ;Protein non-Protein ;Water_and_ions > > nstlist = 20 > ns_type = grid > pbc = xyz > > rlist = 1.4 > coulombtype = PME > pme-order = 4 > fourierspacing = 0.16 > rcoulomb = 1.2 > epsilon_r = 15 > > cutoff-scheme = Verlet > vdw_type = Cut-off > rvdw_switch = 0.9 > vdw-modifier = Force-switch > rvdw = 1.2 > > constraints = None > constraint_algorithm = Lincs > lincs_iter = 1 ; accuracy of LINCS > lincs-order = 4 > > > What could be the reason of this error? Also, I’m wondering that why > gromacs does not fully use the available memory. Is there any option that > restricts the memory usage of gromacs? > > Any comment will be helpful. > Thank you for your time. > Sincerely, > Seyeong. > > -- > Gromacs Users mailing list > > * Please search the archive at > http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before > posting! > > * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists > > * For (un)subscribe requests visit > https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or > send a mail to [email protected]. -- Gromacs Users mailing list * Please search the archive at http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before posting! * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists * For (un)subscribe requests visit https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or send a mail to [email protected].
