Gaudi Configuration
Gaudi Configuration
In order to make the most of Gaudi, it is advised to rely on advanced features such as Habana Mixed Precision or optimized operators. You can specify which features to use in a Gaudi configuration, which will take the form of a JSON file following this template:
Copied
Here is a description of each configuration parameter:
use_habana_mixed_precision
enables to decide whether or not Habana Mixed Precision (HMP) should be used. HMP allows to mix fp32 and bf16 operations. You can find more information here.hmp_is_verbose
enables to decide whether to log precision decisions for each operation for debugging purposes. It is disabled by default. You can find an example of such log here.use_fused_adam
enables to decide whether to use the custom fused implementation of the ADAM optimizer provided by Habana.use_fused_clip_norm
enables to decide whether to use the custom fused implementation of gradient norm clipping provided by Habana.hmp_bf16_ops
enables to specify the Torch operations that should be computed in bf16. You can find more information about casting rules here.hmp_fp32_ops
enables to specify the Torch operations that should be computed in fp32. You can find more information about casting rules here.
hmp_is_verbose
, hmp_bf16_ops
and hmp_fp32_ops
will not be used if use_habana_mixed_precision
is false.
You can find examples of Gaudi configurations in the Habana model repository on the BOINC AI Hub. For instance, for BERT Large we have:
Copied
To instantiate yourself a Gaudi configuration in your script, you can do the following
Copied
and pass it to the trainer with the gaudi_config
argument.
GaudiConfig
class optimum.habana.GaudiConfig
( **kwargs )
Last updated