code: def test_inner_product(self, order):
      @jit.rawkernel()
      def inner_product(a, b, c):
          i = jit.threadIdx.x
          c[i] = jit.thrust.inner_product(
              jit.thrust.device,
              a[i].begin(),
              a[i].end(),
              b[i].begin(),
              0.0,
          )
  
      (n1, n2) = (128, 160)
      x = testing.shaped_random(
          (n1, n2), dtype=numpy.float32, order=order, seed=0
      )
      y = testing.shaped_random(
          (n1, n2), dtype=numpy.float32, order=order, seed=1
      )
      z = cupy.zeros((n1,), dtype=numpy.float32)
      inner_product[1, n1](x, y, z)
  
      expected = (x * y).sum(axis=1)
      testing.assert_allclose(z, expected, rtol=1e-6)
  
imports: import numpy
  import pytest
  import cupy
  from cupy import testing
  from cupy_backends.cuda.api import runtime
  from cupyx import jit
label_desc: Use image node_id 17 for calling the TestThrust obj's underlying member method code with example usage: obj.test_inner_product(order) without return types