ML OUTBLOCK: Difference between revisions

From VASP Wiki
No edit summary
No edit summary
 
(5 intermediate revisions by the same user not shown)
Line 2: Line 2:
{{TAGDEF|ML_OUTBLOCK|[integer]|1}}
{{TAGDEF|ML_OUTBLOCK|[integer]|1}}


Description: Output distance in number of steps of the molecular-dynamics results for {{TAG|ML_MODE}}=''RUN'' within the machine learning force fields.
Description: Output distance in number of steps for molecular-dynamics simulations with machine-learned force fields in prediction-only mode ({{TAGO|ML_MODE|run}}).
{{NB|mind|This tag is only available as of VASP.6.4.0.}}
{{NB|important|This tag is only available as of VASP.6.4.0. Unfortunately, the implementation of this feature was incomplete before VASP.6.4.3. In {{VASP}} versions prior to 6.4.3 there was still substantial remaining per-time-step output, in particular in {{FILE|vasprun.xml}} and {{FILE|vaspout.h5}} (see table below). If possible, please use VASP.6.4.3 or higher for production runs with potentially large file output.}}
----
----
By default the code writes all results at every molecular-dynamics step ({{TAG|ML_OUTBLOCK}}=1).
By default {{VASP}} writes all results at every molecular-dynamics step ({{TAGO|ML_OUTBLOCK|1}}). However, this may become inefficient when running long trajectories in production runs with a machine-learned force field in prediction-only mode ({{TAGO|ML_MODE|run}}). This is particularly true if the force field supports the fast execution mode, i.e., refitting was performed with {{TAGO|ML_MODE|refit}}. Then, depending on the system size, writing output each time step may hinder performance, cause heavy I/O load and create unnecessary large files. In order to circumvent these problems {{TAGO|ML_OUTBLOCK|n}} instructs {{VASP}} to write screen and file output only every <code>n</code> time steps.
{{TAG|ML_OUTBLOCK}}>1 becomes only relevant for the fast force fields (refitting with {{TAG|ML_MODE}}=''REFIT''), because then the calculation time of the force field is of the same order as the time required for the output to all necessary files.  


To additionally increase the efficiency, calculation and output of pair-correlation functions can be completely switched off by setting {{TAG|ML_OUTPUT_MODE}}=0.
In order to further increase the efficiency, calculation and output of pair-correlation functions can be completely switched off by setting {{TAGO|ML_OUTPUT_MODE|0}}. {{NB|warning|This tag will potentially override defaults and {{FILE|INCAR}} values of {{TAG|NBLOCK}}! {{TAG|NBLOCK}} will be automatically set to the maximum of {{TAG|ML_OUTBLOCK}} and {{TAG|NBLOCK}}.}} A comparison of the effects of {{TAG|NBLOCK}} and {{TAG|ML_OUTBLOCK}} on the output frequency of different files/properties is given in the following table. Here, "yes" means the output will only be written in the interval in time steps given by the tag value. On the other hand, "no" indicates that the output will be written every time step regardless of the tag value. {{Table - Output interval options}}
 
This tag will also possibly change the value for {{TAG|NBLOCK}} since it is calculated as the maximum of {{TAG|ML_OUTBLOCK}} and {{TAG|NBLOCK}}.


== Related tags and articles ==
== Related tags and articles ==
{{TAG|ML_LMLFF}}, {{TAG|ML_MODE}}, {{TAG|ML_LFAST}}, {{TAG|ML_IERR}}, {{TAG|ML_OUTPUT_MODE}}
{{TAG|ML_LMLFF}}, {{TAG|ML_MODE}}, {{TAG|ML_LFAST}}, {{TAG|ML_IERR}}, {{TAG|ML_OUTPUT_MODE}}, {{TAG|NBLOCK}}
----
----


[[Category:INCAR tag]][[Category:Machine-learned force fields]]
[[Category:INCAR tag]][[Category:Machine-learned force fields]]

Latest revision as of 14:27, 27 March 2024

ML_OUTBLOCK = [integer]
Default: ML_OUTBLOCK = 1 

Description: Output distance in number of steps for molecular-dynamics simulations with machine-learned force fields in prediction-only mode (ML_MODE = run).

Important: This tag is only available as of VASP.6.4.0. Unfortunately, the implementation of this feature was incomplete before VASP.6.4.3. In VASP versions prior to 6.4.3 there was still substantial remaining per-time-step output, in particular in vasprun.xml and vaspout.h5 (see table below). If possible, please use VASP.6.4.3 or higher for production runs with potentially large file output.

By default VASP writes all results at every molecular-dynamics step (ML_OUTBLOCK = 1). However, this may become inefficient when running long trajectories in production runs with a machine-learned force field in prediction-only mode (ML_MODE = run). This is particularly true if the force field supports the fast execution mode, i.e., refitting was performed with ML_MODE = refit. Then, depending on the system size, writing output each time step may hinder performance, cause heavy I/O load and create unnecessary large files. In order to circumvent these problems ML_OUTBLOCK = n instructs VASP to write screen and file output only every n time steps.

In order to further increase the efficiency, calculation and output of pair-correlation functions can be completely switched off by setting ML_OUTPUT_MODE = 0.

Warning: This tag will potentially override defaults and INCAR values of NBLOCK! NBLOCK will be automatically set to the maximum of ML_OUTBLOCK and NBLOCK.

A comparison of the effects of NBLOCK and ML_OUTBLOCK on the output frequency of different files/properties is given in the following table. Here, "yes" means the output will only be written in the interval in time steps given by the tag value. On the other hand, "no" indicates that the output will be written every time step regardless of the tag value.

INCAR tag controls output frequency: yes/no
Output file/property NBLOCK ML_OUTBLOCK
≤ 6.4.2 ≥ 6.4.3
screen output no yes yes
OSZICAR no yes yes
OUTCAR
  ↳ energies and time no no yes
  ↳ forces and stress yes yes yes
CONTCAR no yes yes
XDATCAR yes yes yes
PCDAT (1) yes yes yes
REPORT yes yes yes
ML_LOGFILE no yes yes
ML_HEAT no no yes
ML_EATOM no no yes
vasprun.xml
  ↳ energy no no yes
  ↳ forces (1) no no yes
  ↳ stress (1) no no yes
  ↳ structure (1) no no yes
  ↳ time no no yes
vaspout.h5
  ↳ energies no no(2) yes
  ↳ forces no no(2) yes
  ↳ stress no no(2) yes
  ↳ position_ions yes yes yes
  ↳ lattice_vectors yes yes yes
  ↳ ion_velocities yes yes yes
  ↳ pair_correlation (1) yes yes yes

(1) ML_OUTPUT_MODE = 0 can disable output completely

(2) Zeros are written for intermediate steps

Related tags and articles

ML_LMLFF, ML_MODE, ML_LFAST, ML_IERR, ML_OUTPUT_MODE, NBLOCK