6.5. Task: GenerateReference

If some training or validation set entries do not have reference values, set Task GenerateReference to generate a training_set.ref.yaml or validation_set.ref.yaml file with reference values.

Task GenerateReference will run all the needed jobs for any training set entries with missing reference values. The engine settings are determined by looking up the ReferenceEngineID for the job in the engine collection.

If you use the GUI, then the calculated reference values will automatically be loaded when the job has finished.

To continue from an interrupted run, you can set a RestartDirectory to the results/reference_jobs directory from the previous run.

RestartDirectory
Type:

String

Default value:

GUI name:

Load jobs from:

Description:

Specify a directory to continue interrupted GenerateReference or SinglePoint calculations. The directory depends on the task: GenerateReference: results/reference_jobs SinglePoint: results/single_point/jobs Note: If you use the GUI this directory will be COPIED into the results folder and the name will be prepended with ‘dep-’. This can take up a lot of disk space, so you may want to remove the ‘dep-’ folder after the job has finished.

Parallelization options can be set with ParallelLevels. Note: Only ParallelLevels%Jobs, ParallelLevels%Processes, and ParallelLevels%Threads are used for GenerateReference jobs.

ParallelLevels
Type:

Block

GUI name:

Parallelization distribution:

Description:

Distribution of threads/processes between the parallelization levels.

Jobs
Type:

Integer

Default value:

0

GUI name:

Jobs (per loss function evaluation)

Description:

Number of JobCollection jobs to run in parallel for each loss function evaluation.

Processes
Type:

Integer

Default value:

1

GUI name:

Processes (per Job)

Description:

Number of processes (MPI ranks) to spawn for each JobCollection job. This effectively sets the NSCM environment variable for each job. A value of -1 will disable explicit setting of related variables. We recommend a value of 1 in almost all cases. A value greater than 1 would only be useful if you parametrize DFTB with a serial optimizer and have very few jobs in the job collection.

Threads
Type:

Integer

Default value:

1

GUI name:

Threads (per Process)

Description:

Number of threads to use for each of the processes. This effectively set the OMP_NUM_THREADS environment variable. Note that the DFTB engine does not use threads, so the value of this variable would not have any effect. We recommend always leaving it at the default value of 1. Please consult the manual of the engine you are parameterizing. A value of -1 will disable explicit setting of related variables.