NBSEBLOCKO: Difference between revisions

From VASP Wiki
(Created page with "{{TAGDEF|NBSEBLOCKO|[integer]}} {{DEF|NBSEBLOCKO|-1|}} Description: {{TAG|NBSEBLOCKO}} specifies the blocking factor for the occupied states when setting up the BSE Hamiltonian. ---- By default, the construction of the BSE Hamiltonian in VASP is parallelized over k-points, such that each MPI rank can compute a pair of k-points. This way the BSE Hamiltonian setup can be parallelized up to <math>\mathrm{NKPTS*(NKPTS+1)/2}</math> MPI ranks or <math>\mathrm{NKPTS*2*(NKPTS*2...")
 
No edit summary
Line 7: Line 7:


If no <math>\mathrm{NBSEBLOCKV}</math> or <math>\mathrm{NBSEBLOCKO}</math> is specified, no paralliziation over bands is used and <math>\mathrm{NBLKO=1 (NBLKV=1)}</math>.
If no <math>\mathrm{NBSEBLOCKV}</math> or <math>\mathrm{NBSEBLOCKO}</math> is specified, no paralliziation over bands is used and <math>\mathrm{NBLKO=1 (NBLKV=1)}</math>.
{{NB|mind|Parallelization over bands with {{TAG|NBSEBLOCKO}} does not work with the old BSE driver, i.e., {{TAG|IBSE}}{{=}}0}}


== Related tags and sections ==
== Related tags and sections ==

Revision as of 10:09, 11 June 2024

NBSEBLOCKO = [integer] 

Default: NBSEBLOCKO = -1

Description: NBSEBLOCKO specifies the blocking factor for the occupied states when setting up the BSE Hamiltonian.


By default, the construction of the BSE Hamiltonian in VASP is parallelized over k-points, such that each MPI rank can compute a pair of k-points. This way the BSE Hamiltonian setup can be parallelized up to MPI ranks or for spin-polarized case, where is the total number of k-points in the full Brillouin zone. However, if a large number of MPI ranks is used in a calculation with too few k-point, this leads to load imbalance, where some of the MPI rank will have no data to compute. In such cases, it is recommended to use parallelization over bands. If the paralliziation over bands is used, all occupied (unoccupied) bands are divided into a number of blocks, where and Failed to parse (Conversion error. Server ("cli") reported: "[INVALID]"): {\displaystyle \mathrm{NBLKV=NBANDSV/NBSEBLOCKV}</mathrm}. This bands blocking allows VASP to parallelize the setup of the matrix up to <math>\mathrm{NBLKO*NBLKV*NKPTS*(NBLKO*NBLKV*NKPTS+1)/2}} ranks.

If no or is specified, no paralliziation over bands is used and .

Mind: Parallelization over bands with NBSEBLOCKO does not work with the old BSE driver, i.e., IBSE=0


Related tags and sections

BSE, NBSEBLOCKV, BSE calculations