[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [FreeON-devel] problem of compiling Modules/LinAlg.F90 using mpif90
Re: [FreeON-devel] problem of compiling Modules/LinAlg.F90 using mpif90 (backend compiler ifort)
Mon, 28 May 2012 21:43:43 +0000
Thank you again for your help.
>> But I did not find any openmp directive in the source codes. What should I
>> do to use FreeON, let us say, in a node with 8 CPUs using openmp?
> Currently, that code is not available to you (its in beta, and just
> for the linear algebra: SpAMMPack). If it turns out you really want
> we could prob get it going in a couple days with modest efficiency.
> If the rest of your project with FreeON looks viable, I'd be willing
> to try and
> get that working for/with you.
I just prepared the input file, which contains 642 atoms. I will first try
HF/STO-2G to check if it works for the sequential code, also this may be used
as an initial guess for B3LYP/6-31G* or even larger basis sets. If I get the
electronic structure of this system, I will probably try an even larger system
containing ~1300 atoms. I will write to you if I need the openmp code. Thank
> If your code reads a dense matrix, you can use SetEq to convert from
> BCSR to DBL_RNK2, and put the RNK2 into the HDF (or whatever).
> Alternatively, you can put the BCSR to disk, and take the BCSR
> formatted read code from InOut (thats probably easier). In either
> case, the AO density matrix is available after
> RHeqs or SP2 is run. The AO Fock matrix should be available after
> FockBuild is run. If its not lableled "ortho" its probably "AO".
> Turning "MaxDebug" in
> your input file should give you the subprograms invocation in your run.
Ah, sorry, I misunderstood. I thought the "format" means HDF5. I will use the
Fock matrix to construct the left hand side of a linear equation, it would be
better that I use BCSR format to save memory. Or indeed, I will use PETSc
library, so I may need to transform to its format of sparse matrix.
> I only need SCF calculations, and will probably require 5-6 digits. The
> molecule is like protein, so the band gap should be OK. Our computer clusters
> here either have 8 CPUs or 12 CPUs per node (around 2.7 GHz), with 16GB or 24
> GB memory. May I ask, from your experience, how long a calculation of 3-4K
> atoms with 6-31G will take on this machine? Thank you.
> 5-6 digits is somewhere between our thresholds "Loose" (4-5) and
> "Good" (6-7). I'd try first with "Loose" accuracy in your preliminary
> I think 24GB may be too small for 3-4K atoms. You will probably have
> to experiment to see how big you can go. The matrix allocation is I
> believe wired to allocate full (N^2) matrices,
> for generality. We can talk about a more agressive O(N) allocation
> scheme (its in the code, just needs activation) that will require a
> little experimentation
> to get right for your specific case. I'll show you when time comes.
> This is a bit of a pain, and one reason we are re-writing the linear
> algebra from ground up (again).
Do I need the O(N) allocation when I start to calculate the large system, for
instance ~1300 atoms, or ~2000 atoms?
>> 20 0 0 3
>> which look like FreeON starts from xxx to the yyy corner, and then xxz down
>> to yyz, and finally the zzz corner. This is great, since my code uses the
>> same indexing.
> Yeah, I'm pretty sure thats (close to) standard. I'm not sure
> F-functions are "on" everywhere in your version. I think there are a
> couple mods I will
> have to make in QCTC to turn them back on. I need to do it anyway for
> my research goals. Let me know if you need them before I get to it.
Sorry for the misleading example. I will not use f-function. Indeed, the
largest basis set I will try is probably 6-31++G* or 6-311++G* which are
limited to s-, p- and d-functions.