code: def string_list_all_gather(
      strings: list[str], delimiter: str = "\t"
  ) -> list[str]:
      """
      Utility function for distributed data parallel to all gather a list of strings.
      Refer to the idea of ignite `all_gather(string)`:
      https://pytorch.org/ignite/v0.4.5/distributed.html#ignite.distributed.utils.all_gather.
  
      Note: If has ignite installed, will execute based on ignite distributed APIs, otherwise, if the native
      PyTorch distributed group initialized, will execute based on native PyTorch distributed APIs.
  
      Args:
          strings: a list of strings to all gather.
          delimiter: use the delimiter to join the string list to be a long string,
              then all gather across ranks and split to a list. default to "\t".
  
      """
      world_size: int = 1
      if has_ignite:
          world_size = idist.get_world_size()
      elif dist.is_available() and dist.is_initialized():
          world_size = dist.get_world_size()
  
      if world_size <= 1:
          return strings
  
      joined = delimiter.join(strings)
      gathered = evenly_divisible_all_gather(
          torch.tensor(bytearray(joined, "utf-8"), dtype=torch.long),
          concat=False,
      )
      _gathered = [
          bytearray(g.tolist()).decode("utf-8").split(delimiter)
          for g in gathered
      ]
  
      return [i for k in _gathered for i in k]
  
file_path: MONAI/monai/utils/dist.py
imports: from __future__ import annotations
  import sys
  import warnings
  from collections.abc import Callable
  from logging import Filter
  from typing import overload
  import torch
  import torch.distributed
  from monai.config import IgniteInfo
  from monai.utils.module import min_version, optional_import
label_desc: Use image node_id 6 for calling a global function with example usage: string_list_all_gather(strings, delimiter) and returns: unknown, strings