def METHOD_NAME(self, pp_index, tp_index, dp_index, keys_to_ignore=[], strip_tensor_paddings=True):
    state_file_list = self.get_files_for_rank(pp_index, tp_index, dp_index)
    merged_sd = None
    for state_file in state_file_list:
        sd = torch.load(state_file, map_location=torch.device('cpu'))
        for key in keys_to_ignore:
            sd.pop(key, None)
        if strip_tensor_paddings:
            self._strip_tensor_paddings(sd)
        if merged_sd is None:
            merged_sd = sd
        else:
            merged_sd = merge_state(merged_sd, sd)
        self._update_partition_count(merged_sd)
        if strip_tensor_paddings:
            self._clear_group_paddings(merged_sd)
    return merged_sd