code: def test_gemm(self, dtype):
      if not (self.mode is None and self.orderc == "C"):
          pytest.skip()
      dtype = numpy.dtype(dtype)
      tol = self._tol[dtype.char.lower()]
      m, n, k = self.mnk
      a = self._make_matrix(m, k, self.transa, self.ordera, dtype)
      b = self._make_matrix(k, n, self.transb, self.orderb, dtype)
      aa = self._trans_matrix(a, self.transa)
      bb = self._trans_matrix(b, self.transb)
      ref = aa.dot(bb)
      c = cublas.gemm(self.transa, self.transb, a, b)
      cupy.testing.assert_allclose(c, ref, rtol=tol, atol=tol)
  
imports: import numpy
  import pytest
  import cupy
  from cupy import cublas
  from cupy import testing
label_desc: Use image node_id 3 for calling the TestGemmAndGeam obj's underlying member method code with example usage: obj.test_gemm(dtype) without return types