code: def test_unfuse_bias_addmm(self):
      args = [
          torch.randn(20, device="cuda"),
          torch.randn(10, 15, device="cuda"),
          torch.randn(15, 20, device="cuda"),
      ]
  
      @torch.compile()
      def fn(inp, a, b):
          return torch.ops.aten.addmm(inp, a, b)
  
      _, (code) = run_and_get_code(fn, args[0], args[1], args[2])
      FileCheck().check("extern_kernels.addmm(").run(code[0])
  
      @torch.compile()
      def fn2(inp, a, b):
          return torch.nn.functional.gelu(
              torch.ops.aten.addmm(inp, a, b)
          )
  
      _, (code) = run_and_get_code(fn2, args[0], args[1], args[2])
      FileCheck().check_not("extern_kernels.addmm(").run(code[0])
  
      @torch.compile()
      def fn2(inp, a, b):
          return torch.nn.functional.gelu(
              torch.ops.aten.addmm(inp, a, b).unsqueeze(0)
          )
  
      # hit the view path
      _, (code) = run_and_get_code(fn2, args[0], args[1], args[2])
      FileCheck().check_not("extern_kernels.addmm(").run(code[0])
  
imports: import copy
  import unittest
  import torch
  import torch._dynamo.config
  import torch._inductor.config
  from torch._dynamo.test_case import run_tests, TestCase
  from torch._dynamo.utils import count_calls, counters
  from torch._higher_order_ops.out_dtype import out_dtype
  from torch._inductor.fx_passes import joint_graph
  from torch._inductor.fx_passes.serialized_patterns.central_index import get_serialized_pattern
  from torch._inductor.pattern_matcher import _TargetExpr, Arg, CallFunction, gen_pattern, KeywordArg, Match, PatternExpr, PatternMatcherPass, PatternPrettyPrinter, register_graph_pattern, stable_topological_sort
  from torch._inductor.utils import run_and_get_code
  from torch._inductor.virtualized import V
  from torch.testing import FileCheck
  from torch.testing._internal.common_cuda import SM80OrLater
  from torch.testing._internal.common_utils import IS_LINUX, skipIfRocm
  from torch.testing._internal.inductor_utils import HAS_CUDA
label_desc: Use image node_id 29 for calling the TestPatternMatcher obj's underlying member method code with example usage: obj.test_unfuse_bias_addmm() and returns: torch, torch, torch