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

Use by default generic lu factorization since it is faster. #65

Merged
merged 1 commit into from
May 16, 2018

Conversation

saschatimme
Copy link
Member

This starts to use the pure Julia lu factorization instead of the LAPACK version.
Here is a small benchmark for square complex matrices. The LAPACK factorization seems to be more precise but also slower. Especially for n>16 it seems that they start to use blocking techniques
which make things much slower.

Size - generic - blas - difference
4 - 0.508μs - 0.652μs - 1.352e-15
5 - 0.641μs - 0.856μs - 4.131e-16
6 - 0.801μs - 1.031μs - 2.277e-15
7 - 0.974μs - 1.291μs - 1.337e-15
8 - 1.211μs - 1.433μs - 8.709e-15
9 - 1.427μs - 1.752μs - 5.333e-15
10 - 1.669μs - 2.285μs - 3.211e-15
11 - 1.970μs - 2.781μs - 7.021e-15
12 - 2.319μs - 2.955μs - 6.036e-15
13 - 2.748μs - 3.627μs - 7.234e-15
14 - 3.130μs - 3.678μs - 2.297e-14
15 - 3.599μs - 4.265μs - 2.805e-15
16 - 4.091μs - 4.445μs - 1.039e-14
17 - 4.592μs - 7.034μs - 7.356e-15
18 - 5.169μs - 9.022μs - 1.576e-14
19 - 5.840μs - 11.238μs - 2.088e-14
20 - 6.528μs - 13.371μs - 4.375e-15

@codecov
Copy link

codecov bot commented May 16, 2018

Codecov Report

Merging #65 into dev will increase coverage by 0.4%.
The diff coverage is 100%.

Impacted file tree graph

@@            Coverage Diff            @@
##              dev      #65     +/-   ##
=========================================
+ Coverage   91.71%   92.12%   +0.4%     
=========================================
  Files          38       38             
  Lines        1243     1244      +1     
=========================================
+ Hits         1140     1146      +6     
+ Misses        103       98      -5
Impacted Files Coverage Δ
src/predictors/base.jl 100% <100%> (ø) ⬆️
src/utilities.jl 76.19% <100%> (+0.38%) ⬆️
src/correctors/newton.jl 100% <100%> (ø) ⬆️
src/solving/solve.jl 98.03% <0%> (-1.97%) ⬇️
src/solving/path_crossing.jl 100% <0%> (+12.24%) ⬆️

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 d8cbdce...1558632. Read the comment docs.

@saschatimme saschatimme force-pushed the fast-lu branch 2 times, most recently from 36596ca to 3e92b9f Compare May 16, 2018 18:43
@saschatimme
Copy link
Member Author

I wanted to add the old version as well, but always hit a compiler bug similar to #22355, so this is out for now.

@saschatimme saschatimme merged commit b3e16ea into dev May 16, 2018
@saschatimme saschatimme deleted the fast-lu branch May 24, 2018 08:16
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.

1 participant