code: def parse_args(argv=None):
      parser = argparse.ArgumentParser(
          prog="torchvision.prototype.datasets.benchmark.py",
          description="Utility to benchmark new datasets against their legacy variants.",
          formatter_class=argparse.ArgumentDefaultsHelpFormatter,
      )
  
      parser.add_argument(
          "name", help="Name of the dataset to benchmark."
      )
      parser.add_argument(
          "--variant",
          help="Variant of the dataset. If omitted all available variants will be benchmarked.",
      )
  
      parser.add_argument(
          "-n",
          "--num-starts",
          type=int,
          default=3,
          help="Number of warm and cold starts of each benchmark. Default to 3.",
      )
      parser.add_argument(
          "-N",
          "--num-samples",
          type=int,
          default=10_000,
          help="Maximum number of samples to draw during iteration benchmarks. Defaults to 10_000.",
      )
  
      parser.add_argument(
          "--nl",
          "--no-legacy",
          dest="legacy",
          action="store_false",
          help="Skip legacy benchmarks.",
      )
      parser.add_argument(
          "--nn",
          "--no-new",
          dest="new",
          action="store_false",
          help="Skip new benchmarks.",
      )
      parser.add_argument(
          "--ns",
          "--no-start",
          dest="start",
          action="store_false",
          help="Skip start benchmarks.",
      )
      parser.add_argument(
          "--ni",
          "--no-iteration",
          dest="iteration",
          action="store_false",
          help="Skip iteration benchmarks.",
      )
  
      parser.add_argument(
          "-t",
          "--temp-root",
          type=pathlib.Path,
          help=(
              "Root of the temporary legacy root directories. Use this if your system default temporary directory is on "
              "another storage device as the raw data to avoid distortions due to differing I/O stats."
          ),
      )
      parser.add_argument(
          "-j",
          "--num-workers",
          type=int,
          default=0,
          help=(
              "Number of subprocesses used to load the data. Setting this to 0 (default) will load all data in the main "
              "process and thus disable multi-processing."
          ),
      )
  
      return parser.parse_args(argv or sys.argv[1:])
  
imports: import argparse
  import collections.abc
  import contextlib
  import inspect
  import itertools
  import os
  import os.path
  import pathlib
  import shutil
  import sys
  import tempfile
  import time
  import unittest.mock
  import warnings
  import torch
  from torch.utils.data import DataLoader
  from torch.utils.data.dataloader_experimental import DataLoader2
  from torchvision import datasets
  from torchvision.datasets.utils import extract_archive
  from torchvision.prototype import datasets
  from torchvision.transforms import PILToTensor
label_desc: Use image node_id 12 for calling a global function with example usage: parse_args(argv) and returns: parser