Skip to content
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

Add SuperLUMT support #681

Merged
merged 21 commits into from
Apr 16, 2019
Merged

Add SuperLUMT support #681

merged 21 commits into from
Apr 16, 2019

Conversation

dweindl
Copy link
Member

@dweindl dweindl commented Apr 6, 2019

Closes #680.

Only for CMake-based build yet.

TODO:

  • Add wrapper
  • Build script for SuperLUMT, SuperLUMT option for sundials, CMake option in AMICI
  • Test
  • Document
  • Allow setting number of threads
  • NewtonSolverSparse::NewtonSolverSparse still uses SUNKLU
  • Enable for Python?
  • Enable on travis?
  • Enable for Matlab?

@codecov
Copy link

codecov bot commented Apr 6, 2019

Codecov Report

Merging #681 into develop will increase coverage by 0.01%.
The diff coverage is 63.63%.

Impacted file tree graph

@@             Coverage Diff             @@
##           develop     #681      +/-   ##
===========================================
+ Coverage    72.95%   72.97%   +0.01%     
===========================================
  Files           49       49              
  Lines         7041     7045       +4     
===========================================
+ Hits          5137     5141       +4     
  Misses        1904     1904
Flag Coverage Δ
#cpp 69.58% <63.63%> (ø) ⬆️
#python 83.37% <ø> (+0.05%) ⬆️
Impacted Files Coverage Δ
include/amici/solver.h 100% <ø> (ø) ⬆️
include/amici/newton_solver.h 100% <ø> (ø) ⬆️
src/steadystateproblem.cpp 82.22% <ø> (ø) ⬆️
include/amici/sundials_linsol_wrapper.h 45.45% <ø> (ø) ⬆️
src/sundials_linsol_wrapper.cpp 18.06% <ø> (ø) ⬆️
src/hdf5.cpp 88.02% <100%> (+0.02%) ⬆️
src/solver.cpp 70.64% <50%> (+0.11%) ⬆️
src/newton_solver.cpp 89.04% <85.71%> (-0.62%) ⬇️
python/amici/__init__.py 83.63% <0%> (+1.81%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 356fdde...bf4cb1f. Read the comment docs.

@dweindl
Copy link
Member Author

dweindl commented Apr 7, 2019

First quick test with CS_Signalling_ERBB_RAS_AKT (1228 states) not too promising. Fastest with minDegATPlusA ordering. Using one thread, Simulation took 2x longer than with KLU. Using 2 threads doubles runtime. Should test with something bigger.

@dweindl dweindl requested a review from FFroehlich April 7, 2019 12:12
@dweindl
Copy link
Member Author

dweindl commented Apr 7, 2019

I'd leave it as is for now. Can be used via C++ interface. The other points can be addressed once it's really needed. For me SuperLT_MT does not seem practical.

@dweindl dweindl changed the title [WIP] Add SuperLUMT support Add SuperLUMT support Apr 8, 2019
include/amici/defines.h Outdated Show resolved Hide resolved
include/amici/solver.h Outdated Show resolved Hide resolved
@dweindl dweindl merged commit 37548c1 into develop Apr 16, 2019
@dweindl dweindl deleted the feature_680_superlu branch April 16, 2019 17:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants