Thanks for the quick feedback. I had expected that reading YAML files would be a bit slower than reading regular LAMMPS dump files (see also this discussion by Axel Kohlmeyer). But I haven’t measured it in benchmarks so far and I am surprised that there is such a big speed drop as you describe. I’ll have a closer look at it. What is the typical data size of your simulation snapshots (in terms of particle count and data column count)?
OVITO uses the Rapid YAML framework, which supposedly is very fast, to parse the YAML structure and then extract the specific information of the LAMMPS format from the in-memory representation. OVITO always reads one simulation timestep at a time, i.e., file sections delimited by “—” and “…” elements. When opening a trajectory dump file, OVITO first scans the entire YAML file to generate an index of byte offsets where individual frames start, for quick random access during animation playback.