diff options
author | Gael Guennebaud <g.gael@free.fr> | 2019-02-11 13:58:24 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2019-02-11 13:58:24 +0100 |
commit | ab6e6edc328368889c265a82cbb62f00be1e86ff (patch) | |
tree | 32d1acbe0fa6d4f40df6f543304b0d09dfc3548b /test/lu.cpp | |
parent | 21eb97d3e07ca3e314f36c1511a3669d7a2f1ed3 (diff) |
Speedup PartialPivLU for small matrices by passing compile-time sizes when available.
This change set also makes a better use of Map<>+OuterStride and Ref<> yielding surprising speed up for small dynamic sizes as well.
The table below reports times in micro seconds for 10 random matrices:
| ------ float --------- | ------- double ------- |
size | before after ratio | before after ratio |
fixed 1 | 0.34 0.11 2.93 | 0.35 0.11 3.06 |
fixed 2 | 0.81 0.24 3.38 | 0.91 0.25 3.60 |
fixed 3 | 1.49 0.49 3.04 | 1.68 0.55 3.01 |
fixed 4 | 2.31 0.70 3.28 | 2.45 1.08 2.27 |
fixed 5 | 3.49 1.11 3.13 | 3.84 2.24 1.71 |
fixed 6 | 4.76 1.64 2.88 | 4.87 2.84 1.71 |
dyn 1 | 0.50 0.40 1.23 | 0.51 0.40 1.26 |
dyn 2 | 1.08 0.85 1.27 | 1.04 0.69 1.49 |
dyn 3 | 1.76 1.26 1.40 | 1.84 1.14 1.60 |
dyn 4 | 2.57 1.75 1.46 | 2.67 1.66 1.60 |
dyn 5 | 3.80 2.64 1.43 | 4.00 2.48 1.61 |
dyn 6 | 5.06 3.43 1.47 | 5.15 3.21 1.60 |
Diffstat (limited to 'test/lu.cpp')
0 files changed, 0 insertions, 0 deletions