def METHOD_NAME(config):
    """
    process optim configs for hybrid parallel
    """
    config["Optimizer"]["multi_precision"] = config["Engine"]["mix_precision"]["enable"]
    nranks = dist.get_world_size()
    dp_degree = config["Distributed"]["dp_degree"]
    sharding_degree = config["Distributed"]["sharding"]["sharding_degree"]
    if config["Optimizer"].get("tensor_fusion", None):
        assert (
            nranks == dp_degree * sharding_degree
        ), "tensor_fusion only support single card train or data/sharding parallel train"
    if config["Optimizer"]["lr"]["decay_steps"] is None:
        config["Optimizer"]["lr"]["decay_steps"] = config["Engine"]["max_steps"]
    config["Optimizer"]["lr"]["decay_steps"] *= config["Global"]["global_batch_size"]