pycuda._driver.MemoryError: cuMemAlloc failed: out of memory


I am using Cuda 11.2 on Ubuntu 16.04 with GeForce GTX 980 Ti/PCIe/SSE2 and cryosparc v3.1.0. I am trying to perform Patch motion correction (multi) with ~3000 tiff movies, and I am recieving this error:

Error occurred while processing J6/imported/VLP_30k_1003_Oct14.tif
Traceback (most recent call last):
File “/home/salmen/programs/cryosparc/cryosparc_worker/cryosparc_compute/jobs/”, line 59, in exec
return self.process(item)
File “cryosparc_worker/cryosparc_compute/jobs/motioncorrection/”, line 190, in
File “cryosparc_worker/cryosparc_compute/jobs/motioncorrection/”, line 193, in
File “cryosparc_worker/cryosparc_compute/jobs/motioncorrection/”, line 195, in
File “cryosparc_worker/cryosparc_compute/jobs/motioncorrection/”, line 251, in
File “cryosparc_worker/cryosparc_compute/jobs/motioncorrection/”, line 602, in
File “cryosparc_worker/cryosparc_compute/engine/”, line 339, in cryosparc_compute.engine.cuda_core.EngineBaseThread.ensure_allocated
File “/home/salmen/programs/cryosparc/cryosparc_worker/deps/anaconda/envs/cryosparc_worker_env/lib/python3.7/site-packages/pycuda/”, line 210, in init
self.gpudata = self.allocator(self.size * self.dtype.itemsize)
pycuda._driver.MemoryError: cuMemAlloc failed: out of memory

Marking J6/imported/VLP_30k_1003_Oct14.tif as incomplete and continuing…

Please let me know what I should do to overcome this error.


1 Like

Hi @wsalmen,

Unfortunately the 980 Ti, with only 6 GB of VRAM, is very limited, and technically below the minimum specification required to run cryoSPARC. I suspect that the only way to overcome that error is to upgrade your GPU. You can see more information about cryoSPARC’s minimum system requirements here:


Hi @hsnyder,
I have the same problem, but I am using Cuda 11.3.0-1 on Ubuntu 18.04.5 with GeForce GTX 1660 Ti/PCIe/SSE2 (16GB Ram) and cryosparc v3.2.0. I’m running single Workstation and my notenook meets the minimum requirements but this error appeared.

Please let me know what I should do to overcome this error.


@KulR, I believe the GTX 1660 Ti only has 6GB VRAM as well. Can you post the output of nvidia-smi?

@spunjani, yes it has 6GB VRAM, but requirements says that I need 16 GB RAM

I take this from, so do I need to change my videocard?

And will I need to change my videocard if I start worker node in cluster?

Also this is the result of nvidia-smi:

Your CPU and RAM requirements are fine, but you’re getting the pycuda._driver.MemoryError: cuMemAlloc failed: out of memory error because your GPU doesn’t have enough VRAM (we require 11GB+).

Do you mean that you will be scheduling jobs to a different workstation that is managed by a cluster? If so, you don’t need a GPU. In that case, your notebook will be acting as the “master” node.

Yes, I mean that my notebook will be master node and cluster as worker node. Thank you for your answer!

I’ll jump into this discussion, a bit late. We have several GTX 1080 cards (8GB of VRAM) that we would like to continue using with cryoSPARC (v 3.2 on Ubuntu 20.04). Is there a way, other than running CPU-only, to continue using these cards with cryoSPARC?