code: public static int cudaMemsetAsync(Pointer devPtr, int value, long count, cudaStream_t stream)
      {
          return checkResult(cudaMemsetAsyncNative(devPtr, value, count, stream));
      }
docs: Initializes or sets device memory to a value.
  
  <pre>
  cudaError_t cudaMemsetAsync (
  void* devPtr,
  int  value,
  size_t count,
  cudaStream_t stream = 0 )
  </pre>
  <div>
  <p>Initializes or sets device memory to a
  value.  Fills the first <tt>count</tt> bytes of the memory area
  pointed to by <tt>devPtr</tt> with the constant byte value <tt>value</tt>.
  </p>
  <p>cudaMemsetAsync() is asynchronous with
  respect to the host, so the call may return before the memset is
  complete. The operation can optionally
  be associated to a stream by passing a
  non-zero <tt>stream</tt> argument. If <tt>stream</tt> is non-zero,
  the operation may overlap with operations in other streams.
  </p>
  <div>
  <span>Note:</span>
  <ul>
  <li>
  <p>Note that this function may
  also return error codes from previous, asynchronous launches.
  </p>
  </li>
  </ul>
  </div>
  </p>
  </div>
  
  @param devPtr Pointer to device memory
  @param value Value to set for each byte of specified memory
  @param count Size in bytes to set
  @param stream Stream identifier
  
  @return cudaSuccess, cudaErrorInvalidValue,
  cudaErrorInvalidDevicePointer
  
  @see JCuda#cudaMemset
  @see JCuda#cudaMemset2D
  @see JCuda#cudaMemset3D
  @see JCuda#cudaMemset2DAsync
  @see JCuda#cudaMemset3DAsync