code: def detect_compute_compatibility(CUDA_HOME, so_file):
      try:
          cuobjdump = os.path.join(CUDA_HOME, "bin", "cuobjdump")
          if os.path.isfile(cuobjdump):
              output = subprocess.check_output(
                  "'{}' --list-elf '{}'".format(cuobjdump, so_file),
                  shell=True,
              )
              output = output.decode("utf-8").strip().split("\n")
              arch = []
              for line in output:
                  line = re.findall(r"\.sm_([0-9]*)\.", line)[0]
                  arch.append(".".join(line))
              arch = sorted(set(arch))
              return ", ".join(arch)
          else:
              return so_file + "; cannot find cuobjdump"
      except Exception:
          # unhandled failure
          return so_file
  
file_path: detectron2/detectron2/utils/collect_env.py
imports: import importlib
  import numpy
  import os
  import re
  import subprocess
  import sys
  from collections import defaultdict
  import PIL
  import torch
  import torchvision
  from tabulate import tabulate
label_desc: Use image node_id 3 for calling a global function with example usage: detect_compute_compatibility(CUDA_HOME, so_file) and returns: str, unknown, so_file