You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hello, many thanks for the development and maintenance of libcifpp!
I've noticed that cif::pdb::reconstruct_pdbx is very slow. E.g. on 7soy mmCIF file from the PDB it takes < 0.2 seconds to parse, but running cif::pdb::reconstruct_pdbx on it takes roughly 4.5 seconds, i.e. a 20x slow-down if one wants to perform the correctness check/autofix.
Vast majority of the time is spent in cif::compound_factory::create:
Could that time be reduced? Also, cif::compound_factory::create seems to be called from multiple places. Would it make sense to cache that load?
I think that this could also be sped up if the CCD was compressed using zstd instead of gzip, as it decompresses much faster.
The text was updated successfully, but these errors were encountered:
You mentioned using zstd. That's a good suggestion, but the point is, when you use the bundled script to update components.cif it will write out a file uncompressed. Removing the need for decompression entirely.
Hello, many thanks for the development and maintenance of libcifpp!
I've noticed that
cif::pdb::reconstruct_pdbx
is very slow. E.g. on7soy
mmCIF file from the PDB it takes < 0.2 seconds to parse, but runningcif::pdb::reconstruct_pdbx
on it takes roughly 4.5 seconds, i.e. a 20x slow-down if one wants to perform the correctness check/autofix.Vast majority of the time is spent in
cif::compound_factory::create
:Could that time be reduced? Also,
cif::compound_factory::create
seems to be called from multiple places. Would it make sense to cache that load?I think that this could also be sped up if the CCD was compressed using zstd instead of gzip, as it decompresses much faster.
The text was updated successfully, but these errors were encountered: