skcuda.cufft.cufftAllocFailed in 3D Variability (v3.0.0)


Thanks for the very exiting updates to cryoSPARC v3.0.
I have just tested the new version and found a few issues with it.
Some have already been reported but this one have not I think?

After updating to v3.0, I seem to have problems running 3D variability.
It starts up fine and goes through the Initial reconstruction fine, but fails at iteration 0 with this error:

> [CPU: 5.16 GB]   Traceback (most recent call last):
>   File "cryosparc_worker/cryosparc_compute/", line 84, in
>   File "cryosparc_worker/cryosparc_compute/jobs/var3D/", line 526, in
>   File "cryosparc_worker/cryosparc_compute/jobs/var3D/", line 312, in
>   File "cryosparc_worker/cryosparc_compute/engine/", line 304, in cryosparc_compute.engine.newengine.EngineThread.load_models_rspace
>   File "cryosparc_worker/cryosparc_compute/engine/", line 153, in cryosparc_compute.engine.newgfourier.rfft3_on_gpu_inplace
>   File "cryosparc_worker/cryosparc_compute/engine/", line 72, in cryosparc_compute.engine.newgfourier.get_plan_R2C_3D
>   File "/opt/bioxray/programs/cryosparc2/cryosparc2_worker/deps/anaconda/envs/cryosparc_worker_env/lib/python3.7/site-packages/skcuda/", line 127, in __init__
>     onembed, ostride, odist, self.fft_type, self.batch)
>   File "/opt/bioxray/programs/cryosparc2/cryosparc2_worker/deps/anaconda/envs/cryosparc_worker_env/lib/python3.7/site-packages/skcuda/", line 742, in cufftMakePlanMany
>     cufftCheckStatus(status)
>   File "/opt/bioxray/programs/cryosparc2/cryosparc2_worker/deps/anaconda/envs/cryosparc_worker_env/lib/python3.7/site-packages/skcuda/", line 117, in cufftCheckStatus
>     raise e
> skcuda.cufft.cufftAllocFailed

I have tried recompile pycuda with CUDA version 10.0, 10.1, 10.2, 11.0 and 11.1 but non of them seems to do the trick.
This is done on a GTX 1080 GPU.

Best regards,

Hey @jelka, try this

  1. Set the CUDA version to the newest one you have available (11.1)
  2. Navigate to the cryosparc_worker directory and run this command:
    bin/cryosparcw forcedeps

Then running the job again. Also can you tell me the box size of your particles and how many variability modes you’re trying to solve?

Thanks @nfrasser,

But “bin/cryosparcw forcedeps” enden up removing the pucuda module.

I have also tried total reinstall of the worker. This end up with the original error.

This is just the T20S tutorial dataset (empiar_10025_subset) I am trying on. Boxsize 448pix and standard settings (3 modes).
All other jobs have worked flawless.


@nfrasser your hint to box size was indeed the problem. I reduced box size a bit and the job ran through.
I guess I need a GPU with more memory…

Thanks for the help