code: def _format_storage_breakdown(storage: Storage) -> str:
      storage_hbm = round(bytes_to_gb(storage.hbm), 3)
      storage_ddr = round(bytes_to_gb(storage.ddr), 3)
      return f"({storage_hbm} GB, {storage_ddr} GB)"
  
imports: import logging
  from collections import defaultdict
  from typing import Any, cast, Dict, List, Optional, Tuple, Union
  from torch import nn
  from torchrec.distributed.planner.constants import BIGINT_DTYPE, NUM_POOLINGS
  from torchrec.distributed.planner.shard_estimators import _calculate_shard_io_sizes
  from torchrec.distributed.planner.storage_reservations import FixedPercentageStorageReservation, HeuristicalStorageReservation, InferenceStorageReservation
  from torchrec.distributed.planner.types import ParameterConstraints, Perf, ShardingOption, Stats, Storage, StorageReservation, Topology
  from torchrec.distributed.planner.utils import _find_imbalance_tables, bytes_to_gb, bytes_to_mb, sharder_name
  from torchrec.distributed.types import ModuleSharder, ParameterSharding, ShardingPlan, ShardingType
label_desc: Use image node_id 5 for calling a global function with example usage: _format_storage_breakdown(storage) and returns: str, storage_hbm, str, storage_ddr, str