KPAR: Difference between revisions
Vaspmaster (talk | contribs) No edit summary |
No edit summary |
||
(14 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{TAGDEF|KPAR|[integer]|1 }} | {{TAGDEF|KPAR|[integer]|1 }} | ||
Description: {{TAG|KPAR}} determines the number of '''k'''-points that are to be treated in parallel. | Description: {{TAG|KPAR}} determines the number of '''k'''-points that are to be treated in parallel (available as of VASP.5.3.2). Also, {{TAG|KPAR}} is used as parallelization tag for [[LTMP2_-_Tutorial|Laplace transformed MP2 calculations]]. | ||
---- | ---- | ||
VASP currently offers parallelization and data distribution over bands and/or over plane wave coefficients (see {{TAG|NCORE}} and {{TAG|NPAR}}), and as of VASP.5.3.2, parallelization over '''k'''-points. | |||
To obtain high efficiency on massively parallel systems or modern multi-core machines, it is strongly recommended to use all at the same time. Most algorithms work with any data distribution (except for the single band conjugated gradient, which is considered to be obsolete). | |||
The set of '''k'''-points is distributed over {{TAG|KPAR}} groups of compute cores, in a round-robin fashion. | The set of '''k'''-points is distributed over {{TAG|KPAR}} groups of compute cores, in a round-robin fashion. | ||
This means that a group of ''N''=(# of cores/{{TAG|KPAR}}) compute cores together work on an individual '''k'''-point (choose {{TAG|KPAR}} such that it is an integer divisor of the total number of cores). | This means that a group of ''N''=(# of cores/{{TAG|KPAR}}) compute cores together work on an individual '''k'''-point (choose {{TAG|KPAR}} such that it is an integer divisor of the total number of cores). | ||
Line 10: | Line 13: | ||
'''Note''': the data is not distributed additionally over '''k'''-points. | '''Note''': the data is not distributed additionally over '''k'''-points. | ||
== Related | '''Note''': {{TAGBL|KPAR}} becomes obsolete if {{TAG|LMP2LT}} or {{TAG|LSMP2LT}} are set and specifies the number of plane-waves treated in parallel, see [[LTMP2_-_Tutorial#Parallelization|here]] for more information. | ||
== Related tags and articles == | |||
{{TAG|NCORE}}, | {{TAG|NCORE}}, | ||
{{TAG|NPAR}}, | {{TAG|NPAR}}, | ||
{{TAG|LPLANE}} | {{TAG|LPLANE}}, | ||
{{TAG|LSCALU}}, | |||
{{TAG|NSIM}}, | |||
{{TAG|LSCALAPACK}}, | |||
{{TAG|LSCAAWARE}}, | |||
{{TAG|LSMP2LT}}, | |||
{{TAG|LMP2LT}} | |||
{{sc|KPAR|Examples|Examples that use this tag}} | |||
---- | ---- | ||
[[Category:INCAR]][[Category:parallelization]] | [[Category:INCAR tag]][[Category:Performance]][[Category:parallelization]][[Category:MP2]] |
Latest revision as of 14:24, 8 April 2022
KPAR = [integer]
Default: KPAR = 1
Description: KPAR determines the number of k-points that are to be treated in parallel (available as of VASP.5.3.2). Also, KPAR is used as parallelization tag for Laplace transformed MP2 calculations.
VASP currently offers parallelization and data distribution over bands and/or over plane wave coefficients (see NCORE and NPAR), and as of VASP.5.3.2, parallelization over k-points. To obtain high efficiency on massively parallel systems or modern multi-core machines, it is strongly recommended to use all at the same time. Most algorithms work with any data distribution (except for the single band conjugated gradient, which is considered to be obsolete).
The set of k-points is distributed over KPAR groups of compute cores, in a round-robin fashion. This means that a group of N=(# of cores/KPAR) compute cores together work on an individual k-point (choose KPAR such that it is an integer divisor of the total number of cores). Within this group of N cores that share the work on an individual k-point, the usual parallelism over bands and/or plane wave coefficients applies (as set by means of the NCORE and NPAR tags).
Note: the data is not distributed additionally over k-points.
Note: KPAR becomes obsolete if LMP2LT or LSMP2LT are set and specifies the number of plane-waves treated in parallel, see here for more information.
Related tags and articles
NCORE, NPAR, LPLANE, LSCALU, NSIM, LSCALAPACK, LSCAAWARE, LSMP2LT, LMP2LT