code: def test_cuda_ssim_dtypes(available_device, dtype, precision):
      # Checks https://github.com/pytorch/ignite/pull/3034
      if available_device == "cpu" and dtype in [
          torch.float16,
          torch.bfloat16,
      ]:
          pytest.skip(reason=f"Unsupported dtype {dtype} on CPU device")
  
      shape = (12, 3, 28, 28)
  
      y_pred = torch.rand(shape, device=available_device, dtype=dtype)
      y = y_pred * 0.8
  
      compare_ssim_ignite_skiimg(y_pred, y, available_device, precision)
  
file_path: ignite/tests/ignite/metrics/test_ssim.py
imports: from typing import Sequence, Union
  import numpy
  import pytest
  import torch
  from skimage.metrics import structural_similarity
  import ignite.distributed
  from ignite.exceptions import NotComputableError
  from ignite.metrics import SSIM
label_desc: Use image node_id 8 for calling a global function with example usage: test_cuda_ssim_dtypes(available_device, dtype, precision) without return types