code: def dask_serialize_cupy_ndarray(x):
      header, frames = cuda_serialize_cupy_ndarray(x)
      frames = [memoryview(cupy.asnumpy(f)) for f in frames]
      return header, frames
  
file_path: distributed/distributed/protocol/cupy.py
imports: from __future__ import annotations
  import copyreg
  import cupy
  from distributed.protocol.cuda import cuda_deserialize, cuda_serialize
  from distributed.protocol.serialize import dask_deserialize, dask_serialize, register_generic
label_desc: Use image node_id 3 for calling a global function with example usage: dask_serialize_cupy_ndarray(x) and returns: header,  frames