Marking 2D class runs as complete not working


At least in 4.1x (haven’t tried 4.2), killing 2D class runs and marking as complete is not working. Even if I kill a 2D run after it has been through multiple full iterations, the particle output remains at zero, rather than the correct number. The runs themselves are fine if allowed to run to completion.


There’s a new option under Data Management (near the bottom of the Build options), “Output results after every full iteration” if that is disabled iterations don’t write anything out until the job has finished-finished.

Tripped me up as well.

1 Like

Ahaha I see! Thanks for the heads up!

You’re right, I didn’t realize that had been added for 2D too now - I rather think having this option on (like the old behavior) should be the default, as it means if the job is accidentally stopped, e.g. due to a system shutdown, running out of memory, whatever, the results can still be used and the compute time isn’t wasted…

1 Like

Something like a project specific global option, similar to SSD caching which defaults to “safe” (write out all iterations) might be the best choice?

1 Like

Hi @olibclarke , @rbs_sci ,

In CryoSPARC v4.3, 2D Classification, 3D Classification, and 3D Variability Analysis jobs will now produce intermediate results at each iteration, but will delete intermediate results from previous iterations as each new iteration completes. This behaviour can be turned off with a project-level or job-level parameter that will keep all intermediate results.

With this change, marking 2D class jobs as complete after the job fails or is killed should work properly, as the last iteration result will be saved and available for use.

See Latest Updates | CryoSPARC for the full changelog.


Great, thanks! This sounds like a very good change :slight_smile:

Sounds like a good implementation. :slight_smile: