code: def flatten_dp_dimension(meg_2d_map, src_2d_size, dp_degree):
      new_meg_2d_map = meg_2d_parallel_map(
          meg_2d_map.pp_degree, meg_2d_map.tp_degree
      )
      for pp_index in range(meg_2d_map.pp_degree):
          for tp_index in range(meg_2d_map.tp_degree):
              dp0_indices = meg_2d_map.get_data(pp_index, tp_index)
              for idx in dp0_indices:
                  dpX_indices = [
                      idx + (i * src_2d_size) for i in range(dp_degree)
                  ]
                  new_meg_2d_map.add_data(
                      pp_index, tp_index, dpX_indices
                  )
      return new_meg_2d_map
  
file_path: DeepSpeed/deepspeed/checkpoint/reshape_3d_utils.py
imports: from .reshape_utils import get_files, get_files_with_prefix, partition_data, get_zero_files
  from .constants import MODEL_FILE_PREFIX, LAYER_FILE_PREFIX
  from .reshape_meg_2d import reshape_meg_2d_parallel, meg_2d_parallel_map
label_desc: Use image node_id 2 for calling a global function with example usage: flatten_dp_dimension(meg_2d_map, src_2d_size, dp_degree) and returns: new_meg_2d_map