code: def setUp(self):
      super(TestGpuCumOp, self).setUp()
      test_ctx = get_context(test_ctx_name)
      if test_ctx.kind != b"cuda":
          raise SkipTest("Cuda specific tests")
      self.max_threads_dim0 = test_ctx.maxlsize0
      self.max_grid_size1 = test_ctx.maxgsize2
      self.op_class = CumOp
  
      # The CPU implementation is not so accurate, which throws out DebugMode.
      # Since propagating .tag.values_eq_approx to the output of every
      # GpuFromHost seems overkill, we just relax the rtol for these tests
      self.old_rtol = theano.tensor.float32_rtol
      theano.tensor.basic.float32_rtol *= 2
  
imports: from __future__ import absolute_import, print_function, division
  from functools import partial
  from itertools import product
  import numpy
  from six.moves import xrange
  from theano import tensor
  import theano
  import theano.tensor.tests.test_extra_ops
  from theano.tensor.extra_ops import CumOp
  from theano.tests.unittest_tools import SkipTest
  from theano.tests import unittest_tools
  from .config import mode_with_gpu, test_ctx_name
  from ..extra_ops import GpuCumOp
  from ..type import get_context
label_desc: Use image node_id 1 for calling the TestGpuCumOp obj's underlying member method code with example usage: obj.setUp() without return types