code: def mm_options(
      config, sym_m, sym_n, sym_k, layout, b_prologue_cast_type=None
  ):
      """
      Common options to matmul triton templates.
      """
      even_k_symbolic = (
          # it isn't worth guarding on this
          sympy.gcd(sym_k, config.kwargs["BLOCK_K"])
          == config.kwargs["BLOCK_K"]
      )
      allow_tf32 = torch.backends.cuda.matmul.allow_tf32 and (
          not inductor_config.force_same_precision
          or (
              (sym_m % 16) == 0
              and (sym_n % 16) == 0
              and (sym_k % 8) == 0
          )
      )
      return dict(
          GROUP_M=8,
          EVEN_K=even_k_symbolic,
          ALLOW_TF32=allow_tf32,
          ACC_TYPE=acc_type(layout.dtype),
          B_PROLOGUE_CAST_TYPE=b_prologue_cast_type,
          num_stages=config.num_stages,
          num_warps=config.num_warps,
          **config.kwargs,
      )
  
file_path: pytorch/torch/_inductor/kernel/mm_common.py
imports: import functools
  import logging
  from typing import cast, List, Tuple
  import sympy
  import torch
  from torch._inductor.select_algorithm import realize_inputs
  from torch._inductor.virtualized import V
  from ..None import config
  from ..utils import ceildiv, next_power_of_2
label_desc: Use image node_id 5 for calling a global function with example usage: mm_options(config, sym_m, sym_n, sym_k, layout, b_prologue_cast_type) and returns: dict