Guide: Verify cryoSPARC Installation with the Extensive Workflow
CryoSPARC provides a job called "Extensive Workflow for T20S", which performs a full 3D reconstruction of the T20S Proteasome (EMPIAR-10025) from a small (~8GB) subset of movies. The CryoSPARC engineering team uses this job to automatically test and benchmark CryoSPARC between releases.
System Administrators may use the extensive workflow job to verify that CryoSPARC is correctly configured following a fresh installation or an update.
- Import Micrographs
- Motion Correction
- CTF Estimation
- Particle Picking and Extraction
- 2D Classification
- Ab-initio reconstruction
- Homogeneous Refinement
The following system requirements are verified:
- CryoSPARC system and license installation
- Worker/Cluster configuration
- GPU and CUDA driver installation
- SSD caching
The sample data has the following characteristics:
- Number of images: 20
- Frames per image: 38
- Image size: 7420 × 7676 (K2 Super Resolution)
- Pixel size: 0.66 Å
Once started, the workflow should take no more than an hour to complete.
- 1.Open the CryoSPARC web interface
- 2.In the dashboard, create a new Project from the navigation bar
Specify a descriptive title such as "Extensive Workflow Testing" and directory for the project to store its data.
3. Create a new workspace for that project.
Best practices: Create a new workspace and run the Extensive Workflow in that workspace each time CryoSPARC updates and restarts. Name each workspace with the latest installed version of CryoSPARC that the job runs on. For example, when testing CryoSPARC v2.15.0, name the workspace "v2.15.0 Benchmark & Validation"
4. Select the Job Builder from the sidebar and select the "Extensive Workflow for T20S (BENCH) (BETA)" job (under Workflows)
5. (Optional) If desired, change the workflow parameters.
Specifying a valid "Movies data path" and "Gain reference path" is NOT required; if the path does not exist on the system, cryoSPARC automatically downloads a ~8GB subset of the T20S dataset and deletes the download when the job finishes.
6. Select "Queue" and choose a worker lane for the job, then select "Create"
After queuing, a modal opens with an overview of the workflow job progress. The job status should shortly change to "Running".
Close the modal with the
×button. This shows a workspace overview with the child jobs that the Extensive Workflow job spawns to carry out T20S processing.
Once all child jobs successfully complete, the Extensive Workflow job status changes to "Completed". This means the installation was successful. Users may now be notified to start or resume processing!
If any child jobs fails, the extensive workflow times-out and its status is set to "Failed".
Scroll through the workspace to find other jobs with the "Failed" status. Open the job overview either by selecting the job number next to the status indicator (e.g.,
J4) , or by selecting the Job card and pressing the
Scroll to the bottom to see why the job failed.
Example Import Movies failure because the Gain Reference was not found
Common failure reasons include
Once the configuration issue is resolved, restart the Extensive Workflow job: Either create a new workspace and job as already noted, or clear the existing Extensive Workflow job and re-queue.
For an even more extensive test of robustness, the Extensive Workflow job provides an advanced option called "Run all job types"
- 1.Enable advanced mode near the top of the job builder
- 2.Enable to "Run all job types" switch
With this option enabled, the job runs additional child jobs in parallel. Use this to verify multi-GPU performance on a single node.
The following additional job types are included:
- Full-frame motion correction
- Global CTF estimation
- Local motion correction
- Multi-class ab-initio reconstruction
- Heterogeneous and non-uniform refinement
- 3D Variability
Below are the results from our tests with CryoSPARC v3.1 on a 4GPU machine with the T20S subset.
On a machine with the recommended system configuration, the Extensive Workflow takes ~1 hour with the default settings and ~1 hour 30 minutes with all job types enabled (note that some jobs run in parallel when enough GPUs are available).