"OS call failed or operation not supported on this OS" error during Heterogeneous Refinement

Hetero refine fails after initial iteration with the following error:

-----------------------------------
[CPU: 2.40 GB]     Done in 5.452s.

[CPU: 2.40 GB]   -- Iteration 0

[CPU: 2.40 GB]     Batch size 7000 

[CPU: 2.40 GB]     Using Alignment Radius 19.440 (20.000A)

[CPU: 2.40 GB]     Using Reconstruction Radius 29.160 (13.333A)

[CPU: 2.40 GB]     Randomizing assignments for identical classes...

[CPU: 2.40 GB]     Number of BnB iterations 3

[CPU: 2.40 GB]     Engine Started.

[CPU: 2.90 GB]   Traceback (most recent call last):
  File "/usr/local/cryosparc/3.0/cryosparc_worker/cryosparc_compute/jobs/runcommon.py", line 1726, in run_with_except_hook
    run_old(*args, **kw)
  File "cryosparc_worker/cryosparc_compute/engine/cuda_core.py", line 130, in cryosparc_compute.engine.cuda_core.GPUThread.run
  File "cryosparc_worker/cryosparc_compute/engine/cuda_core.py", line 131, in cryosparc_compute.engine.cuda_core.GPUThread.run
  File "cryosparc_worker/cryosparc_compute/engine/engine.py", line 1089, in cryosparc_compute.engine.engine.process.work
  File "cryosparc_worker/cryosparc_compute/engine/engine.py", line 305, in cryosparc_compute.engine.engine.EngineThread.compute_resid_pow
  File "cryosparc_worker/cryosparc_compute/engine/cuda_core.py", line 319, in cryosparc_compute.engine.cuda_core.EngineBaseThread.ensure_allocated
pycuda._driver.LogicError: cuMemHostAlloc failed: OS call failed or operation not supported on this OS

[CPU: 2.90 GB]   Traceback (most recent call last):
  File "/usr/local/cryosparc/3.0/cryosparc_worker/cryosparc_compute/jobs/runcommon.py", line 1726, in run_with_except_hook
    run_old(*args, **kw)
  File "cryosparc_worker/cryosparc_compute/engine/cuda_core.py", line 130, in cryosparc_compute.engine.cuda_core.GPUThread.run
  File "cryosparc_worker/cryosparc_compute/engine/cuda_core.py", line 131, in cryosparc_compute.engine.cuda_core.GPUThread.run
  File "cryosparc_worker/cryosparc_compute/engine/engine.py", line 1089, in cryosparc_compute.engine.engine.process.work
  File "cryosparc_worker/cryosparc_compute/engine/engine.py", line 305, in cryosparc_compute.engine.engine.EngineThread.compute_resid_pow
  File "cryosparc_worker/cryosparc_compute/engine/cuda_core.py", line 319, in cryosparc_compute.engine.cuda_core.EngineBaseThread.ensure_allocated
pycuda._driver.LogicError: cuMemHostAlloc failed: invalid argument
------------------------------------

cryoSPARC version: v3.1.0
CUDA version: CRYOSPARC_CUDA_PATH="/opt/debian10/cuda/10.1.243"
OS: Debian10

The error started after upgrading from v2.15.0 to v3.0.0 Reverting back to older version(s) did not solve the issue. I recently updated to v3.0.1 and the error is still there.

@Zuhaib I’ll direct-message you some instructions for how potentially fix this issue.

@nfrasser I’ve just installed cryoSPARC v3.1.0 on a desktop that didn’t have it before and I’m getting the same error running the extensive workflow testing (Ubuntu 16.04 LTS, CUDA 10.2). Do you have any suggestions?