def get_distribution_instance_groups_from_resource_config()

in src/sagemaker_training/environment.py [0:0]


    def get_distribution_instance_groups_from_resource_config(self):
        """If non heterogeneous cluster mode is used, instance_groups inside distribution is a noop
        We populate the sagemaker_distribution_instance_groups with current instance group name ~
        homogeneousCluster
        """
        # pylint: disable=too-many-boolean-expressions
        distribution_instance_groups = []
        current_instance_group = self.resource_config.get(
            "current_group_name", "homogeneousCluster"
        )
        if (
            self._additional_framework_parameters.get("sagemaker_mpi_enabled", False)
            or self._additional_framework_parameters.get(
                "sagemaker_parameter_server_enabled", False
            )
            or self._additional_framework_parameters.get(
                "sagemaker_distributed_dataparallel_enabled", False
            )
            or self._additional_framework_parameters.get("sagemaker_pytorch_ddp_enabled", False)
            or self._additional_framework_parameters.get(
                "sagemaker_pytorch_xla_multi_worker_enabled", False
            )
            or self._additional_framework_parameters.get(
                "sagemaker_multi_worker_mirrored_strategy_enabled", False
            )
            or self._additional_framework_parameters.get(
                "sagemaker_torch_distributed_enabled", False
            )
        ):
            distribution_instance_groups.append(current_instance_group)
        return distribution_instance_groups