title: Custom types in OpenCL kernel
body: <p>Is it possible to use custom types in OpenCL kernel like gmp types (mpz_t, mpq_t, …) ?</p>
  
  <p>To have something like this (this kernel doesn't build just because of <code>#include &lt;gmp.h&gt;</code>) :</p>
  
  <pre>
  #include &lt;gmp.h&gt;
  __kernel square(
     __global mpz_t* input,
     __global mpz_t number,
     __global int* output,
     const unsigned int count)
  {
     int i = get_global_id(0);
     if(i &lt; count)
         output[i] = mpz_divisible_p(number,input[i]);
  }
  </pre>
  
  <p>Maybe by adding different arguments to the fourth parameter (<em>options</em>) of <code>clBuildProgram</code> ?</p>
  
  <p>Or does OpenCL already have types that can handle <em>large</em> numbers ?</p>