nnp-scaling
Warning
Documentation under construction…
This tool calculates all symmetry functions for a given dataset (input.data
),
stores scaling information and computes neighbor and symmetry function
histograms. It is a prerequisite for training with nnp-train
. nnp-scaling
can be called with MPI parallelization and requires an additional command line
argument, e.g.
mpirun -np 4 nnp-scaling 500
This will randomly distribute the given structures to 4 cores (for load
balancing). The scaling parameters (minimum, maximum, mean and sigma) of
symmetry functions are written to scaling.data
. Histograms showing the
symmetry function value distributions are provided in separate files (e.g.
sf.008.0003.histo
will contain the histogram for symmetry function 3 for
oxygen atoms). In the above example, the command line parameter nbin
is set
to 500 which determines the number of bins for symmetry function histograms.
In addition, a neighbor histogram is written to neighbors.histo
. The screen
output contains a useful section about memory requirements during training,
e.g.
*** MEMORY USAGE ESTIMATION ***************************************************
Estimated memory usage for training (keyword "memorize_symfunc_results":
Valid for training of energies and forces.
Memory for local structures : 12459839800 bytes (11882.63 MiB = 11.60 GiB).
Memory for all structures : 49526892170 bytes (47232.53 MiB = 46.13 GiB).
Average memory per structure : 6839786 bytes (6.52 MiB).
*******************************************************************************
While nnp-scaling
itself will not use a lot of RAM memory, training speed with
nnp-train
can be significantly increased if intermediate symmetry function
results can be stored and reused. This will usually require a large amount of
memory and the above lines present a rough estimate of the minimum usage. In
practice at least 10% more memory should be expected.