Illegal memory access with icosahedral symmetry ab initio

We are trying to do an ab initio reconstruction of a small icosahedral virus. When we specify I symmetry in the input parameters, we get the following error at the start of iteration 0. The same job runs normally using C1 or even O symmetry. It’s only crashing when we specify icosahedral symmetry.

Traceback (most recent call last): File "cryosparc2_compute/jobs/runcommon.py", line 747, in run_with_except_hook run_old(*args, **kw) File "cryosparc2_worker/cryosparc2_compute/engine/cuda_core.py", line 101, in cryosparc2_compute.engine.cuda_core.GPUThread.run File "cryosparc2_worker/cryosparc2_compute/engine/cuda_core.py", line 102, in cryosparc2_compute.engine.cuda_core.GPUThread.run File "cryosparc2_worker/cryosparc2_compute/engine/engine.py", line 1076, in cryosparc2_compute.engine.engine.process.work File "cryosparc2_worker/cryosparc2_compute/engine/engine.py", line 671, in cryosparc2_compute.engine.engine.EngineThread.backproject File "cryosparc2_worker/cryosparc2_compute/engine/cuda_core.py", line 237, in cryosparc2_compute.engine.cuda_core.EngineBaseThread.toc File "cryosparc2_worker/cryosparc2_compute/engine/cuda_core.py", line 233, in cryosparc2_compute.engine.cuda_core.EngineBaseThread.wait LogicError: cuStreamSynchronize failed: an illegal memory access was encountered

I’ve tested cuda 8/9.2/10/10.1 with driver 418.39 and 9.2/10 with driver 410.48 and received the exact same error with all the cuda/driver versions. This is with cryosparc v2.5.0 on centos 7.5 with tesla v100s.

Hi @nis_it,

Can you provide the box size of the particles, the number of particles, the reconstruction size of the refinement?
Also, which icosahedral symmetry were you using? We have three defined:

'I':
"""
rot_axis 2 0 1 0
rot_axis 5 -0.85065080702670 0 0.5257311142635
rot_axis 3 -0.9341723640 0.3568220765 0
""",
'I1':
"""
rot_axis 2 0 1 0
rot_axis 5 -0.85065080702670 0 0.5257311142635
rot_axis 3 -0.9341723640 0.3568220765 0
""",
'I2':
"""
rot_axis 2  0 0 1
rot_axis 5 -1.618033989  -1 0
rot_axis 3 -0.53934467   -1.4120227   0
""", 

Perhaps you can try a different specification (I believe they simply correspond to global rotations of the icosahedral units, which does not matter at ab-initio time)

Here you go Ali,

  • box size: 400 @ 0.95 Å/pix
  • number of particles: 4892
  • reconstruction size: ? (see below?) - only default changed was the symmetry specification
  • symmetry specified: “I”

———

Using 1 classes.
Computing Ab-Initio Structure:
Volume Size: 64 (voxel size 5.95A)
Final Output Volume Size: 128
Data Size: 400 (pixel size 0.95A)
Resolution Range: 35.00A to 12.00A
Fourier Radius Range: 10.9 to 31.0 with steps of 0.040000

————

The specifications for “I” and “I1” appear to be identical. We tried all three symmetry specifications you provided, they all give the same exact error.

Importing a model allows heterogeneous and homogeneous refinement to run with no errors using the same box size and number of particles.

Hope this helps.