Netiquette · Download · News · Gallery · G-quadruplexes · DSSR-Jmol · DSSR-PyMOL · Video Overview · DSSR v2.6.0 (DSSR Manual) · Homepage

Author Topic: When analyzing multiple frames with --nmr, DSSR gets slower with each frame  (Read 16546 times)

Offline rkpoppleton

  • non-commercial
  • with-posts
  • *
  • Posts: 4
    • View Profile
When I analyze MD trajectories with the --nmr option, the runtime does not scale linearly with the number of frames as one might expect.  For the same structure here are some benchmarks:
n_framesruntime (hh:mm)
25001:00
50004:15
10000>15:00

This suggests to me that there is either some sort of memory leak or maybe the file writing is seeking to the end of the file at the end of each frame?

Here is my DSSR command:
Code: [Select]
~/software/x3dna-dssr -i=RNA_traj.pdb --nmr --json -o=dssr.json
DSSR version: 2.4.6-2024nov15

Offline xiangjun

  • Administrator
  • with-posts
  • *****
  • Posts: 1705
    • View Profile
    • 3DNA homepage
Hi,

Thanks for using DSSR and for posting your question on the Forum. I am aware of the issue you are describing. The initial design of the --nmr option allows for flexibility of user-selected frames/models (e.g., --nmr=3+5+6:9 as described in the User Manual). For each frame/model, DSSR re-reads the input file from the beginning, which causes the slowdown as you observed. There is no memory leak, as you can verify with valgrind or similar tools.

DSSR Pro version allows for sequential processing of all the frames in a single pass, which leads to faster performance (scale linearly with the number of frames).

Best regards,

Xiang-Jun
« Last Edit: June 12, 2025, 07:40:25 pm by xiangjun »

Offline rkpoppleton

  • non-commercial
  • with-posts
  • *
  • Posts: 4
    • View Profile
I see.  That makes sense where the slowdown is coming from.  For what its worth, in tools I've worked on in the past, when we need to do random-access trajectory reading, we first read through the whole trajectory once and make an index of the byte offsets for the start of each frame.  That way you can jump to any arbitrary frame without having to search through the file each time.

Offline xiangjun

  • Administrator
  • with-posts
  • *****
  • Posts: 1705
    • View Profile
    • 3DNA homepage
It sounds like a good suggestion. I will think about it.
« Last Edit: June 13, 2025, 10:38:52 am by xiangjun »

Offline xiangjun

  • Administrator
  • with-posts
  • *****
  • Posts: 1705
    • View Profile
    • 3DNA homepage
I have updated DSSR Academic to version 2.6.0, which significantly speeds up the analysis of multiple frames of MD trajectories. The default settings will no longer experience slowdowns with later frames. The runtime should now scale linearly with the number of frames, as expected.

The new DSSR Academic v2.6.0 will shortly be available on the CTV download page, expected to be released within the next few days.


Note added on 2025-07-25: DSSR v2.6.0 is now available on CTV download page
« Last Edit: July 25, 2025, 11:15:11 am by xiangjun »

 

Funded by the NIH R24GM153869 grant on X3DNA-DSSR, an NIGMS National Resource for Structural Bioinformatics of Nucleic Acids

Created and maintained by Dr. Xiang-Jun Lu, Department of Biological Sciences, Columbia University