Feature #2336

Make reflectometry computation as fast as in Refnx

Added by juan 8 months ago. Updated 17 days ago.

Status:BacklogStart date:04 Apr 2019
Priority:LowDue date:
Assignee:-% Done:

0%

Category:Reflectometry
Target version:-

Description

During our last group meeting, we decided to carry out several performance tests:

  • Time scaling with the number of layers
  • Time taken to run a simple simulation
  • Time scaling with the simulation resolution

The results are not satisfactory as can be seen from the following notebook:

https://nbviewer.jupyter.org/github/juanmcloaiza/BornAgainReflectometryComparison/blob/master/PerformanceTests/BornAgain_Performance_Analysis.ipynb

As this issue is not a priority for the moment (is it?), I suggest to keep further investigations and possible fixes on the backlog.
However, looking ahead for a possible fix, I did some experimenting on reusing an already performing piece of code and embedding it inside a python API --which could also be a GUI for that matter:

https://nbviewer.jupyter.org/github/juanmcloaiza/BornAgainReflectometryComparison/blob/master/PerformanceTests/Reusing_an_already_performing_engine.ipynb


Related issues

Related to BornAgain - Refactoring #2343: Improve performance in reflectometry engine Backlog 30 Apr 2019
Related to BornAgain - Refactoring #2410: Speeding up computations on samples with a large number of layers Backlog 21 Oct 2019

History

#1 Updated by wuttke 8 months ago

  • Tracker changed from Testing to Feature
  • Subject changed from BornAgain performance is not optimal to Make reflectometry computation as fast as in Refnx
  • Status changed from New to Backlog
  • Priority changed from Normal to Low

#2 Updated by dmitry 17 days ago

  • Category set to Reflectometry

#3 Updated by dmitry 17 days ago

#4 Updated by dmitry 17 days ago

  • Related to Refactoring #2410: Speeding up computations on samples with a large number of layers added

Also available in: Atom PDF