-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create benchmark for espirit #6
Comments
Last time I tried it MRIReco espirit was far more slower than BART espirit. But I did not really investigates why (ComplexF32 etc, parameters etc) I will create a benchmark for that on CI to check if it is still the case |
Not sure when you last tried. I put a lot of work into making ESPIRIT faster with substantial success. The biggest difference to BART that I am aware of is this: MagneticResonanceImaging/MRIReco.jl#55 (comment) , which is on my TODO list, but I honestly won't get around to do this any time soon. So anyone feel free to give it a go. To answer @tknopp question: I did not do any systematic comparison so far and it could well be that there are other bottlenecks that make the Julia code slower compared to BART, which is certainly well optimized. When relocating the benchmark to a dedicated benchmark, we might use this as an opportunity to move the actual code out of the MRIReco package into a dedicated |
@JakobAsslaender just tried it on one of my project and espirit is actually "fast" enough to be used in it. |
@JakobAsslaender bart = 42sec and julia = 157 sec https://atrotier.github.io/MRIRecoVsBART_Benchmark/benchmark_espirit.html |
Great, thanks for setting it up! This is a great benchmark for further developments! I will use it when I get around to implementing above mentioned Uecker-magic. |
@aTrotier: This looks good and I try to integrate it into our infrastructure. One question though? How can I get a ground truth sensitivities in order to compare accuracy? |
if you use the option -S rather than -s, bart returns the sensitivity maps : sens_ground_truth = bart(1,"phantom -3 -x$sx -S$nch"); |
Some first progress by MagneticResonanceImaging/MRIReco.jl@acff670: |
Teamwork over at MagneticResonanceImaging/MRIReco.jl#111 And just for verification. Here are the maps: |
Great job ! |
Nice! I am very happy to loose to the pros over at BART by this margin ;) |
Oh, realizing only now that our code is actually faster. 🚀 |
Espirit is right now part of
benchmark1
which was made on purpose since we wanted to compare the entire chain when we wrote the initial MRIReco publication.Now that we improved this benchmark suite it would be great to have a dedicated benchmark for the coil estimation and we could probably use the same sensitivity profiles in
benchmark1
.@JakobAsslaender: This might be interesting for you (since you worked on that code):
The text was updated successfully, but these errors were encountered: