code: def train_one_epoch_fused_optimizer(
      model: torch.nn.Module,
      dataset: IterableDataset[Batch],
      device: torch.device,
  ) -> float:
      start_time = time.perf_counter()
  
      for data in dataset:
          sparse_features = data.sparse_features.to(device)
          fused_pooled_embeddings = model(sparse_features)
  
          fused_vals = []
          for _name, param in fused_pooled_embeddings.to_dict().items():
              fused_vals.append(param)
          torch.cat(fused_vals, dim=1).sum().backward()
  
      end_time = time.perf_counter()
  
      return end_time - start_time
  
file_path: torchrec/benchmarks/ebc_benchmarks_utils.py
imports: import time
  from typing import Dict, List, Optional, Tuple
  import numpy
  import torch
  from torch.utils.data.dataset import IterableDataset
  from torchrec.datasets.random import RandomRecDataset
  from torchrec.datasets.utils import Batch
  from torchrec.modules.embedding_configs import EmbeddingBagConfig
label_desc: Use image node_id 3 for calling a global function with example usage: train_one_epoch_fused_optimizer(model, dataset, device) and returns: unknown