shankar1729 / jdftx

JDFTx: software for joint density functional theory
http://jdftx.org
84 stars 54 forks source link

How many cores can be used for calculating? #2

Closed Lennart-Winter closed 7 years ago

Lennart-Winter commented 7 years ago

Dear Shankar,

as written in the title, I wanted to ask: how many cores can be used during a bandstructure calculation? In the tutorials were always used 4, but can also let's say 16 cores be used?

The critical point in calculating bandstructures is the number of kpoints, which can be controlled over the bandstruct command. How much RAM would you advise is enough? (64GB) The more the better :) ?

Thank you as always for your help and your answer.

With best regards,

Lennart

shankar1729 commented 7 years ago

Hi Lennart,

You can use as many cores as you need / have; the tutorials all assume a typical laptop for simplicity. The only restriction is you cannot use more MPI processes than kpoints efficiently because of how parallelization over MPI is currently implemented. In any case, you can use a lot of cores combining MPI processes (at most one per k-point) and cores(threads) per process (at most number of cores on each compute node). See the last part of http://jdftx.org/GettingStarted.html

Memory requirement depends on what you are calculating. Most tutorial calculations don't require very much memory (by design) and should be fine on 4 or 8 GB in typical laptops. A quick estimate (conservative upper bound) for the required memory is (nStates nBands nBasis * 0.1) MB, for which you can get the data from a dry run.

Shankar

Lennart-Winter commented 7 years ago

Dear Shankar,

thank you for your answer. That was really helpful.

Best regards,

Lennart