code: def test_pool_big_ws(self):
      gpu_mode = mode_with_gpu.excluding("cudnn")
      gpu_mode.check_py_code = False
  
      shp = (2, 2, 2, 2)
      inp = theano.shared(rand(*shp), "a")
      inp = tensor.as_tensor_variable(inp)
      ds_op = GpuPool(
          ignore_border=False, mode="average_exc_pad", ndim=2
      )
      pad = tensor.as_tensor_variable([0, 0])
      f = theano.function(
          [], ds_op(inp, [5, 5], stride=[1, 1], pad=pad), mode=gpu_mode
      )
      f()
  
file_path: Theano/theano/gpuarray/tests/test_pool.py
imports: from __future__ import absolute_import, print_function, division
  import unittest
  import copy
  import itertools
  import numpy
  import theano
  from theano import gradient
  from theano import tensor
  from theano.tensor.signal.pool import Pool, MaxPoolGrad, AveragePoolGrad, DownsampleFactorMaxGradGrad
  from theano.tests import unittest_tools
  from .config import mode_with_gpu, mode_without_gpu
  from .test_basic_ops import rand
  from ..pool import GpuPool, GpuMaxPoolGrad, GpuAveragePoolGrad, GpuDownsampleFactorMaxGradGrad
label_desc: Use image node_id 3 for calling the TestPool obj's underlying member method code with example usage: obj.test_pool_big_ws() without return types