opm-models icon indicating copy to clipboard operation
opm-models copied to clipboard

testing removing fucntion invertMatrix

Open GitPaean opened this issue 2 years ago • 11 comments

GitPaean avatar Sep 26 '23 12:09 GitPaean

jenkins build this opm-simulators=4896 please

GitPaean avatar Sep 26 '23 12:09 GitPaean

If I recall correctly, we have this here to get better performance. In Dune there was a specialization missing and since DenseMatrix was introduced the optimized invert method was not picked up. I can be missing something.

We definitely will need to benchmark the changes here to be sure that the prerequisites do not hold anymore.

blattms avatar Sep 26 '23 12:09 blattms

benchmark please

GitPaean avatar Sep 26 '23 13:09 GitPaean

Did not go through the jenkins failures in detail. But it looks like only small fluctuations. Very likely that we can go ahead to remove the MatrixBlock unless more information shows the opposite.

I do not know where to find the benchmark results anymore.

GitPaean avatar Sep 27 '23 08:09 GitPaean

I have notified Michael about the benchmark problems.

In addition we need to do some manual benchmarking with more than 3 phases, too.

blattms avatar Sep 28 '23 08:09 blattms

In addition we need to do some manual benchmarking with more than 3 phases, too.

For the blackoil cases, StandardWell has 4 primary variables, so the 4X4 inversion might be used. But I do not think it will affect the performance in a noticeable way.

For other cases, maybe the cases with 4 primary variables, like blackoil + polymer might use it, we can check it. Other than that, there is not much 4X4 matrices involved I believe.

GitPaean avatar Sep 28 '23 08:09 GitPaean

benchmark please

blattms avatar Sep 28 '23 10:09 blattms

jenkins build this opm-simulators=4896 please

GitPaean avatar Jun 17 '24 12:06 GitPaean

benchmark opm-simulators=4896 please

GitPaean avatar Jun 17 '24 13:06 GitPaean

Benchmark result overview:

Test Configuration Relative
opm-git OPM Benchmark: drogon - Threads: 1 1
opm-git OPM Benchmark: drogon - Threads: 8 0.978
opm-git OPM Benchmark: punqs3 - Threads: 1 1.013
opm-git OPM Benchmark: punqs3 - Threads: 8 1.003
opm-git OPM Benchmark: smeaheia - Threads: 1 1.018
opm-git OPM Benchmark: smeaheia - Threads: 8 1.007
opm-git OPM Benchmark: spe10_model_1 - Threads: 1 1.001
opm-git OPM Benchmark: spe10_model_1 - Threads: 8 1
opm-git OPM Benchmark: flow_mpi_extra - Threads: 1 1.009
opm-git OPM Benchmark: flow_mpi_extra - Threads: 8 1.006
opm-git OPM Benchmark: flow_mpi_norne - Threads: 1 0.985
opm-git OPM Benchmark: flow_mpi_norne - Threads: 8 0.986
opm-git OPM Benchmark: flow_mpi_norne_4c_msw - Threads: 1 1.008
opm-git OPM Benchmark: flow_mpi_norne_4c_msw - Threads: 8 0.995
  • Speed-up = Total time master / Total time pull request. Above 1.0 is an improvement. *

View result details @ https://www.ytelses.com/opm/?page=result&id=2515

ytelses avatar Jun 17 '24 19:06 ytelses

benchmark opm-simulators=4896 please

GitPaean avatar Jun 17 '24 19:06 GitPaean