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
pulseq_rs is the new importer, compatible with 1.5 and skips the whole pydisseqt dependency.
The old one is still there for comparison, if everything works fine we can remove it
While I cannot provide the exact sequence which I used above to get those timings, I can provide a generic sequence which gives similar-enough differences: 0.244 with pydisseqt versus 27.60 with pulseq_rs.
FYI, I had to rename the extension from .seq to .txt to attach it to this comment.
The loading of the .seq file itself is fast, which hints that the problem is in the code that converts the data into the internal format for MR-zero.
Thank you for reporting this, I will revise that code as soon as possible.
Sped up import by x20. Old code used linear search per repetition to find the correct pulseq plot, leading to quadratic computational cost. Now we use binary search.
This makes the new importer still x5 slower than the old one on the sequence you provided. The difference should no longer be prohibitive or explode with long sequences. Please re-open if its really bad for some sequences. (More than a couple of seconds). Will improve further in the future.
Activity
J-Endres commentedon Jun 24, 2026
pulseq_rs is the new importer, compatible with 1.5 and skips the whole pydisseqt dependency.
The old one is still there for comparison, if everything works fine we can remove it
lobroc commentedon Jun 25, 2026
It seems like there's significant performance difference between the two parsers. Is this expected?
J-Endres commentedon Jul 7, 2026
No and I never experienced such a difference. Can you share the .seq file that produced those timings?
lobroc commentedon Jul 10, 2026
While I cannot provide the exact sequence which I used above to get those timings, I can provide a generic sequence which gives similar-enough differences:
0.244withpydisseqtversus27.60withpulseq_rs.FYI, I had to rename the extension from .seq to .txt to attach it to this comment.
bssfp_cine.txt
J-Endres commentedon Jul 13, 2026
The loading of the .seq file itself is fast, which hints that the problem is in the code that converts the data into the internal format for MR-zero.
Thank you for reporting this, I will revise that code as soon as possible.
J-Endres commentedon Jul 20, 2026
Should be fixed in 4484fae / mrzerocore 1.0.5:
Sped up import by x20. Old code used linear search per repetition to find the correct pulseq plot, leading to quadratic computational cost. Now we use binary search.
This makes the new importer still x5 slower than the old one on the sequence you provided. The difference should no longer be prohibitive or explode with long sequences. Please re-open if its really bad for some sequences. (More than a couple of seconds). Will improve further in the future.
mzaiss commentedon Sep 20, 2026
I also see quite some prolongation in import time: (mr0 1.07)
same script using 1.5 and 1.4 writing functions of pypulseq 1.5
1.4.1 - pulseq_rs : 4.84s
1.4.1 - pydisseqt : 0.27s
1.5.0 - pulseq_rs | 4.76s
1.5.0 - pydisseqt | fail (1.5 unsupported)
file is a pypulseq example mprage 2D, attached
mprage_pp.seq.txt
That's 17 times slower still..
mzaiss commentedon Sep 26, 2026
fixed in #194 , please check and merge if ok.