RBMC fails immediately after Iteration 1 with "Not a TIFF or MDI file, bad magic number"

Hi everyone, I’m running CryoSPARC v5 on Ubuntu 24.04.

System configuration: 4 × NVIDIA GeForce RTX 2080 Ti (11 GB VRAM each) and ~192 GB system RAM

My Reference-Based Motion Correction (RBMC) job on a refinement consistently fails immediately after “Beginning Iteration 1”.

The worker log reports:

  • libtiff error: Not a TIFF or MDI file, bad magic number

  • fatal error: I/O error

  • Ran out of memory

The referenced movie itself is a valid TIFF (file <movie>.tiff returns “TIFF image data, little-endian”), and the system has plenty of free RAM and GPU memory. This project was migrated from CryoSPARC v4.3 (CentOS 7) to CryoSPARC v5 (Ubuntu 24.04). All processing before RBMC (Import Movies, Patch Motion, Patch CTF, Particle Extraction, Ab-initio Reconstruction, Heterogeneous Refinement, and Non-uniform Refinement) was completed successfully in v4.3 before migration. After migration, I can still run subsequent refinement jobs successfully in v5. Has anyone experienced a similar issue after migrating a project from v4.3 to v5, or is there any known compatibility issue between RBMC and migrated projects?

Thankyou!

Hi @Imran,

This does not look like the result of any known incompatibility. Could you post a little more context about the errors from the job log? For what it’s worth, I don’t think that the “Ran out of memory” message is related to the I/O failure, so there may be more than one thing going on - please include any context relevant to either.

–Harris

Hi @hsnyder

Thanks for the reply. Turns out these were indeed two separate issues. The I/O failure was from corrupted symlinks in imported/ , during a CentOS7 to Ubuntu 24.04 migration via external HDD, they got converted to Windows-style reparse-point stubs instead of proper Linux symlinks. Fixed by decoding and rebuilding all 16,003 symlinks.

The “Ran out of memory” was separate, running concurrent NU-Refine jobs overnight pushed RAM to ~185/188GB with swap nearly full, confirmed via journalctl. Plain resource exhaustion, not a CryoSPARC bug.

Both resolved now on my end. Thanks for the nudge to look closer.

-Imran