code: def require_single_gpu(test_case):
      """
      Decorator marking a test that requires CUDA on a single GPU. These tests are skipped when there are no GPU
      available or number of GPUs is more than one.
      """
      return unittest.skipUnless(
          torch.cuda.device_count() == 1, "test requires a GPU"
      )(test_case)
  
imports: import asyncio
  import os
  import shutil
  import subprocess
  import sys
  import tempfile
  import unittest
  from contextlib import contextmanager
  from functools import partial
  from pathlib import Path
  from typing import List, Union
  from unittest import mock
  import torch
  from ..state import AcceleratorState, PartialState
  from ..utils import gather, is_bnb_available, is_clearml_available, is_comet_ml_available, is_cuda_available, is_datasets_available, is_deepspeed_available, is_dvclive_available, is_mps_available, is_npu_available, is_pandas_available, is_tensorboard_available, is_timm_available, is_torch_version, is_tpu_available, is_transformers_available, is_wandb_available, is_xpu_available, str_to_bool
label_desc: Use image node_id 16 for calling a global function with example usage: require_single_gpu(test_case) and returns: unittest