NCORE: Difference between revisions

From VASP Wiki
No edit summary
No edit summary
Line 8: Line 8:
{{TAG|NCORE}}=1 is the optimal setting for platforms with a small communication bandwidth and is a good choice for up to 8 cores, as well as for machines with a single core per node and a Gigabit network. However, this mode substantially increases the memory requirements, because the non-local projector functions must be stored entirely on each core. In addition, substantial all-to-all communications are required to orthogonalize the bands. On massively parallel systems and modern multi-core machines we strongly urge to set  
{{TAG|NCORE}}=1 is the optimal setting for platforms with a small communication bandwidth and is a good choice for up to 8 cores, as well as for machines with a single core per node and a Gigabit network. However, this mode substantially increases the memory requirements, because the non-local projector functions must be stored entirely on each core. In addition, substantial all-to-all communications are required to orthogonalize the bands. On massively parallel systems and modern multi-core machines we strongly urge to set  


:<math>\textrm{NCORE}\approx\sqrt{\textrm{\#of}\; \textrm{cores}/\textrm{KPAR}}</math>
:<math>\textrm{NCORE}\approx\sqrt{\textrm{\#of}\; \textrm{cores}}</math>


or
or

Revision as of 20:49, 25 September 2012

NCORE = [integer]
Default: NCORE = 1 

Description: NCORE determines the number of compute cores that work on an individual orbital (available as of VASP.5.2.13).


NCORE determines how many cores share the work on an individual orbital. The current default is NCORE=1, meaning that one orbital is treated by one core. NPAR is then set to the total number of cores. If NCORE equals the total number of cores, NPAR is set to 1. This implies data distribution over plane wave coefficients only: all cores will work together on every individual band, i.e., the plane wave coefficients of each band are distributed over all cores. This is usually very slow and should be avoided.

NCORE=1 is the optimal setting for platforms with a small communication bandwidth and is a good choice for up to 8 cores, as well as for machines with a single core per node and a Gigabit network. However, this mode substantially increases the memory requirements, because the non-local projector functions must be stored entirely on each core. In addition, substantial all-to-all communications are required to orthogonalize the bands. On massively parallel systems and modern multi-core machines we strongly urge to set

or


In selected cases, we found that this improves the performance by a factor of up to four compared to the default, and it also significantly improves the stability of the code due to reduced memory requirements.

Related Tags and Sections

NPAR, LPLANE, KPAR


Contents