FAQ

The code run with X, but not with Y?

You must use only the similar functionality, and only a subpart of Pandas. Develop for dask_cudf. it's easier to be compatible with others frameworks.

.compute() is not defined with pandas?

If your @delayed function return something, other than a VDataFrame or VSerie, the objet does not have the method .compute(). You can solve this, with:

@delayed
def f()-> int:
    return 42

real_result,=compute(f())  # Warning, compute return a tuple. The comma is important.
a,b = compute(f(),f())

.compute() is not defined with numpy?

It's impossible to add this method inside the classes numpy.ndarray or cupy.ndarray. In place, use the global function compute(...).

ar=vnp.array([1,2,3])
compute(ar)[0]

With CUDA, I receive NVMLError_NoPermission

It's a problem with Dask. You have not the privilege to ask the size of memory for the GPU. To resolve that, add in dask configuration files:

  • the parameter distributed:diagnostics:nvml = False
  • the parameter local:device_memory_limit = 5g or the parameter --device-memory-limit 5g when you start dask-cuda-worker (update the size)