Azzera filtri
Azzera filtri

mldivide take too much time

6 visualizzazioni (ultimi 30 giorni)
yusuf albadry
yusuf albadry il 14 Mar 2020
Hi guys,
I am solving compressible NS using FEM , and I wrote my solver using MATLAB.
currently I have a problem with the running time ( 90x30 grid ). One time step takes about 22 seconds, 20 seconds of them are in the inverse line ! I dont know why it takes this much time !.
  19 Commenti
Walter Roberson
Walter Roberson il 15 Mar 2020
If your matrix is real-valued then if it is symmetric then it is also Hermitian -- equal to its complex transpose.
In such a case if the diagonal is all positive or all negative, then you might be able to use cholesky; if the diagonal does not meet that condition then LDL is used.
yusuf albadry
yusuf albadry il 15 Mar 2020
thank you Walter, for helping, it decreased the time to 50% :)
Thanks for all of you

Accedi per commentare.

Risposte (2)

Walter Roberson
Walter Roberson il 18 Mar 2020
To summarize: the most important issue was that the poster had a Ryzen, which is at a disadvantage when using the Intel high performance Math library MKL. Fortunately a user has posted information on how to speed it up; and when the poster did that, they doubled performance.

Precise Simulation
Precise Simulation il 5 Mag 2020
You can also try the MUMPS linear solver which is also is up to 30-50% faster than mldivide (Umfpack) in serial mode (and also supports parallel), and is available as pre-compiled Matlab Mex files with the FEATool Multiphysics toolbox


Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by