I followed the Topaz Tutorial and finally I wanted to make a 2D classification with the default options. The job stops with the following error:
Job ready to run
Using random seed of 722128966
Loading a ParticleStack with 316142 items…
Done.
Windowing particles
Done.
Using 50 classes.
Computing 2D class averages:
Volume Size: 32 (voxel size 2.99A)
Zeropadded Volume Size: 64
Data Size: 220 (pixel size 0.44A)
Using Reconstruction Resolution: 6.00A (15.0 radius)
Using Alignment Resolution: 6.00A (15.0 radius)
Windowing only corners of 2D classes at each iteration.
Using random seed for initialization of 2015500313
Done in 0.755s.
Start of Iteration 0
Traceback (most recent call last):
File “cryosparc2_compute/jobs/runcommon.py”, line 1490, in run_with_except_hook
run_old(*args, **kw)
File “cryosparc2_worker/cryosparc2_compute/engine/cuda_core.py”, line 110, in cryosparc2_compute.engine.cuda_core.GPUThread.run
File “cryosparc2_worker/cryosparc2_compute/engine/cuda_core.py”, line 111, in cryosparc2_compute.engine.cuda_core.GPUThread.run
File “cryosparc2_worker/cryosparc2_compute/engine/engine.py”, line 1072, in cryosparc2_compute.engine.engine.process.work
File “cryosparc2_worker/cryosparc2_compute/engine/engine.py”, line 392, in cryosparc2_compute.engine.engine.EngineThread.find_and_set_best_pose_shift
ValueError: invalid entry in index array
The 2D classification using the template picker on the same dataset runs fine.
What could be the problem?
Version 2.12.4
2.13 includes a fix for this issue, please try running the extract job again with the new update if possible. If the problem continues to persist, please let me know.
Hi,
the extract job worked but at the end I got the following error:
This job outputted results [‘blob’]
Loaded output dset with 315477 items
Passthrough results [‘location’, ‘ctf’, ‘pick_stats’, ‘ml_properties’]
Loaded passthrough dset with 0 items
Checking outputs for output group micrographs
Checking outputs for output group particles
Traceback (most recent call last):
File “cryosparc2_worker/cryosparc2_compute/run.py”, line 82, in cryosparc2_compute.run.main
File “cryosparc2_compute/jobs/runcommon.py”, line 705, in check_outputs
assert output_len == target_len, “Result %s had the wrong length (%d, should be %d). Note that outputs are still usable.” % (resname, output_len, target_len)
AssertionError: Result location had the wrong length (0, should be 315477). Note that outputs are still usable.
Can you check to see if the particle outputs can be seen in an “inspect particle picks” job by linking the particles and micrographs? If this doesn’t work, could you try linking micrographs from the job that was used to pass the micrographs into the extraction job?
Also, could you let me know what the “Number of parallel threads” parameter was set to in the extraction job?
This indicates that the inputs passed into the extraction job are no longer available. Can you check the jobs where the inputs originate from to ensure that the inputs are still available? If the inputs still seem available, try cloning the training job that was used to produce the Topaz model and train a new model using that job. Then pass that new model into the extraction job.
Also, if possible it is recommended to increase the number of GPU in the extraction job.