[CPMD-list] Quench Bo Electrons

Axel Kohlmeyer akohlmey at cmm.chem.upenn.edu
Mon Jul 23 19:41:35 CEST 2007


On Mon, 23 Jul 2007, Samir H. Mushrif wrote:

hi samir,

SM> Hello Axel,
SM>            Thanks for your reply. The suggestions about EKINC and MD 
SM> steps were helpful.       Its not the case that I don't have time to 
SM> implement the solution that you have in mind for my problem. Your 
SM> suggestions have always proven very valuable for me to proceed. I was 
SM> just trying to see if this particular thing can be done without 
SM> parallelization. If it is not possible then I WILL DEFINITELY go for 
SM> parallel option. Since I am a PHD student and there are times when you 

please don't use the fact that you are a phd student
as an excuse to do a sloppy job. people will understand
when you don't know things that need a lot of experience,
and you have shown so far that you are careful and critical
to what you are doing.

SM> want to get something done due to some deadline constraints and I am 
SM> exactly in that situation.    Adding to the system specifications, I am 

i understood that, but you have to realize, that there is no other
way of rushing a CPMD simulation through than running in parallel 
(and that means much more than a single dual-core node, too). CPMD 
does scale well and therefore running on a (real) parallel machine 
at the limit of scaling is - in my personal opinion - the only option 
to get results fast. sorry. there ain't no such thing as a free lunch.

SM> having an AMD 64 opteron machine with dual core. With some of my 
SM> simulations, I used upto 8 GB of memory (as seen in the CPMD output 
SM> file's last few lines) and it worked fine.  Please let me know your 
SM> suggestions and I will work on them.

option a) you make a copy of the GEOMETRY file. run a regular 
wavefunction optimization, and then copy the GEOMETRY file back
and restart with RESTART VELOCITIES WAVEFUNCTION COORDINATES GEOFILE LATEST
that should preserve the velocities from the atoms.

option b) you re-compile with using INTEGER*8 as default integer (cf. 
compiler manual, -i8) and add -DMALLOC8 to CPPFLAGS and set IRAT
in irat.inc to 1.

actually, under those circumstances, compiling an MPI library (e.g.
OpenMPI) and recompiling CPMD with that, sounds not so bad and it
will help you more.

cheers,
   axel.

SM> 
SM> Thanks again
SM> Best Regards
SM> Samir
SM> 
SM> 
SM> Quoting Axel Kohlmeyer <akohlmey at cmm.chem.upenn.edu>:
SM> 
SM> > On Mon, 23 Jul 2007, Samir H. Mushrif wrote:
SM> >
SM> > hello samir,
SM> >
SM> > SM> Hello Axel,
SM> > SM>              Thanks for your reply. Here are some details about the
SM> > SM> discussion (The previous mail communication is at the bottom of this
SM> > SM> e-mail):
SM> > SM>
SM> > SM>           I just performed 50 MD steps and I realized that I need to do
SM> > SM> more MD steps. My sysmtem is huge (210 atoms) and also it is not
SM> > SM> equilibrated classically before start (as it is done for the hydronium
SM> > SM> in bulk water). You also mentioned that the EKINC value is higher. I
SM> > SM> dont have a lot of experience but I thought that it will definitely be
SM> > SM> high since I have 596 electrons in my system. Also looking at the EKS
SM> >
SM> > right. since this number is somewhat arbritrary, it is not
SM> > 'normalized', so with more electrons this should be higher.
SM> > how high is hard to tell. generally, it should be as low as
SM> > possible (without thermostat), and while your system is moving
SM> > towards equilibrium, it is likely that it will increase during
SM> > that process, hence the QUENCH BO before starting the production.
SM> >
SM> > SM> value I noticed that it is continuously decreasing. I guess that I need
SM> > SM> to do a lot more MD steps without thermostat (TEMPCONTROL IONS) to get
SM> >
SM> > a general strategy would be to run with TEMPCONTROL IONS until EKS is
SM> > no longer drifting and then switch to NOSE IONS (try with the MASSIVE
SM> > option for the while to have better ergodicity).
SM> >
SM> > SM> a reasonable value of EKINC. But It is still not clear to me that how
SM> > SM> many times I have to run these steps with the QUENCH BO ELECTRONS ('x'
SM> > SM> number of steps + QUENCH BO ELECTRONS). And as I mentioned that QUENCH
SM> >
SM> > how often you need to quench the system back to the BO surface
SM> > depends on your system. just watch EKINC and whether it is increasing
SM> > or keeping constant. you may also need to 'play' a little with
SM> > the timeptep and fictious mass parameters to get an optimal combination
SM> > for good adiabacity. if your system is behaving well, you may not need
SM> > to quench more than a couple of times.
SM> >
SM> > SM> BO ELECTRONS gives the following error.
SM> > SM>
SM> > SM> ...... (a huge number) WORDS REQUIRED
SM> > SM> PROGRAM STOPS IN SUBROUTINE MEMORY. TOO BIG VALUE.
SM> >
SM> > as already explained. this is a limitation of using regular
SM> > fortran with cray-pointers on a linux machine. the interface
SM> > to malloc only allows to pass memory allocation sizes up to
SM> > 2GB and your job needs more. you _have_ to run in parallel
SM> > or find a way to using 64-bit integers (depends on linux version
SM> > and compiler, whether that can be made to work).
SM> >
SM> > SM> I am running CPMD on a AMD-opteron 64 bit machine in serial, DEBIAN OS
SM> > SM> and it has 32 GB of RAM. I am working on getting CPMD working in
SM> > SM> parallel but it is not done yet. However I would like to know that if I
SM> >
SM> > how many cpus/cores do you have on that machine?
SM> >
SM> > SM> have to still perform the MD, is there a way that I can skip the QUENCH
SM> > SM> BO ELECTRONS. Since I am a PHD student, I want to get this part of my
SM> > SM> project done and hence I don't want to spend a lot of time (since I
SM> > SM> dont have computer science background, it takes me a lot more time than
SM> > SM> others) on getting CPMD run in parallel. It is something that I
SM> >
SM> > well, if you don't have the time, you should not run CPMD, or at
SM> > least not a system of that size on a serial machine. there may be
SM> > some workaround to make it work in serial (i have a couple of ideas),
SM> > however, they are a bit tricky, too, and would require some more testing
SM> > and compiling and/or scripting. but since you don't want to put in 
SM> > the effort...
SM> >
SM> > cheers,
SM> >   axel.
SM> >
SM> > SM> definitely want to do but after getting this particular part of my
SM> > SM> project done.
SM> > SM>
SM> > SM> Thanks and Best Regards
SM> > SM> Samir
SM> > SM>
SM> >
SM> > --
SM> > =======================================================================
SM> > Axel Kohlmeyer   akohlmey at cmm.chem.upenn.edu   http://www.cmm.upenn.edu
SM> >   Center for Molecular Modeling   --   University of Pennsylvania
SM> > Department of Chemistry, 231 S.34th Street, Philadelphia, PA 19104-6323
SM> > tel: 1-215-898-1582,  fax: 1-215-573-6233,  office-tel: 1-215-898-5425
SM> > =======================================================================
SM> > If you make something idiot-proof, the universe creates a better idiot.
SM> >
SM> >
SM> >
SM> 
SM> 

-- 
=======================================================================
Axel Kohlmeyer   akohlmey at cmm.chem.upenn.edu   http://www.cmm.upenn.edu
   Center for Molecular Modeling   --   University of Pennsylvania
Department of Chemistry, 231 S.34th Street, Philadelphia, PA 19104-6323
tel: 1-215-898-1582,  fax: 1-215-573-6233,  office-tel: 1-215-898-5425
=======================================================================
If you make something idiot-proof, the universe creates a better idiot.



More information about the CPMD-list mailing list