@@ -430,6 +430,7 @@ def _choose_accelerator(self) -> str:
430
430
return "cpu"
431
431
432
432
def _set_parallel_devices_and_init_accelerator (self ) -> None :
433
+ # TODO add device availability check
433
434
self ._parallel_devices : List [Union [int , torch .device ]] = []
434
435
435
436
if isinstance (self ._accelerator_flag , Accelerator ):
@@ -451,8 +452,6 @@ def _set_parallel_devices_and_init_accelerator(self) -> None:
451
452
elif self ._accelerator_flag == "gpu" :
452
453
self .accelerator = GPUAccelerator ()
453
454
self ._set_devices_flag_if_auto_passed ()
454
- # TODO add device availablity check for all devices, not only GPU
455
- self ._check_device_availability ()
456
455
if isinstance (self ._devices_flag , int ) or isinstance (self ._devices_flag , str ):
457
456
self ._devices_flag = int (self ._devices_flag )
458
457
self ._parallel_devices = (
@@ -481,12 +480,6 @@ def _set_devices_flag_if_auto_passed(self) -> None:
481
480
if self ._devices_flag == "auto" or not self ._devices_flag :
482
481
self ._devices_flag = self .accelerator .auto_device_count ()
483
482
484
- def _check_device_availability (self ) -> None :
485
- if not self .accelerator .is_available ():
486
- raise MisconfigurationException (
487
- f"You requested { self ._accelerator_flag } , " f"but { self ._accelerator_flag } is not available"
488
- )
489
-
490
483
def _choose_and_init_cluster_environment (self ) -> ClusterEnvironment :
491
484
if isinstance (self ._cluster_environment_flag , ClusterEnvironment ):
492
485
return self ._cluster_environment_flag
@@ -651,7 +644,8 @@ def _check_and_init_precision(self) -> PrecisionPlugin:
651
644
return NativeMixedPrecisionPlugin (self ._precision_flag , device )
652
645
653
646
if self ._amp_type_flag == AMPType .APEX :
654
- return ApexMixedPrecisionPlugin (self ._amp_level_flag ) # type: ignore
647
+ self ._amp_level_flag = self ._amp_level_flag or "O2"
648
+ return ApexMixedPrecisionPlugin (self ._amp_level_flag )
655
649
656
650
raise RuntimeError ("No precision set" )
657
651
0 commit comments