code: def is_rocm_pytorch():
      if OpBuilder._is_rocm_pytorch is not None:
          return OpBuilder._is_rocm_pytorch
  
      _is_rocm_pytorch = False
      try:
          import torch
      except ImportError:
          pass
      else:
          if TORCH_MAJOR > 1 or (TORCH_MAJOR == 1 and TORCH_MINOR >= 5):
              _is_rocm_pytorch = (
                  hasattr(torch.version, "hip")
                  and torch.version.hip is not None
              )
              if _is_rocm_pytorch:
                  from torch.utils.cpp_extension import ROCM_HOME
  
                  _is_rocm_pytorch = ROCM_HOME is not None
      OpBuilder._is_rocm_pytorch = _is_rocm_pytorch
      return OpBuilder._is_rocm_pytorch
  
imports: import os
  import sys
  import time
  import importlib
  from pathlib import Path
  import subprocess
  import shlex
  import shutil
  import tempfile
  import distutils.ccompiler
  import distutils.log
  import distutils.sysconfig
  from distutils.errors import CompileError, LinkError
  from abc import ABC, abstractmethod
  from typing import List
label_desc: Use image node_id 8 for calling the OpBuilder obj's underlying member method code with example usage: obj.is_rocm_pytorch() and returns: OpBuilder, OpBuilder