--
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/0828fdfe-e1b1-475c-872a-bf9a0abf2dc4o%40googlegroups.com.
Try using ActuallyExplicitEuler as the time integrator.
Also are you setting the `implicit = false` flags on non-time objects for the explicit solve?
Note that MOOSE DG will be quite a bit slower than a pure FV implementation because the latter can loop just over faces for problems like this while we loop over elements and then query faces because we are a very general finite *element* code.
Try using ActuallyExplicitEuler as the time integrator. Also are you setting the `implicit = false` flags on non-time objects for the explicit solve?Note that MOOSE DG will be quite a bit slower than a pure FV implementation because the latter can loop just over faces for problems like this while we loop over elements and then query faces because we are a very general finite *element* code.That being said, we have had a couple of folks working on a finite volume implementation in MOOSE that hopefully will end up being of comparable performance with OpenFOAM.
On Fri, Jun 19, 2020 at 8:41 AM Victoria Korchagova <v.kor...@gmail.com> wrote:
Hello everyone!--I've found strange slow behaviour of MOOSE.I solve 1D scalar transport equation in MOOSE with DG method (test/tests/dgkernels/1d_advection_dg.i). Case parameters were: family is MONOMIAL, order is CONSTANT, 100 cells in 1D mesh, delta_t = 1e-4, 10000 time steps, ExplicitEuler scheme. Total computation time is 36 s.I solve the same case in scalarTransportFoam with the same settings. Computational time here is only 5 seconds!What can be a reason for slow computation in MOOSE case? How to accelerate it?..--Best regards, Victoria
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose...@googlegroups.com.
Try using ActuallyExplicitEuler as the time integrator. Also are you setting the `implicit = false` flags on non-time objects for the explicit solve?
Note that MOOSE DG will be quite a bit slower than a pure FV implementation because the latter can loop just over faces for problems like this while we loop over elements and then query faces because we are a very general finite *element* code.That being said, we have had a couple of folks working on a finite volume implementation in MOOSE that hopefully will end up being of comparable performance with OpenFOAM.
On Fri, Jun 19, 2020 at 8:41 AM Victoria Korchagova <v.kor...@gmail.com> wrote:
Hello everyone!--I've found strange slow behaviour of MOOSE.I solve 1D scalar transport equation in MOOSE with DG method (test/tests/dgkernels/1d_advection_dg.i). Case parameters were: family is MONOMIAL, order is CONSTANT, 100 cells in 1D mesh, delta_t = 1e-4, 10000 time steps, ExplicitEuler scheme. Total computation time is 36 s.I solve the same case in scalarTransportFoam with the same settings. Computational time here is only 5 seconds!What can be a reason for slow computation in MOOSE case? How to accelerate it?..--Best regards, Victoria
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose...@googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/7a9b0fdb-3c97-4aeb-9e23-b4af12ef7cb2o%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/CANFcJrFbd7z39bn6BaM_0aZdzgb5_%2BTifdtgoLvOJY-O6t-wBA%40mail.gmail.com.
We would need to profile it to know exactly. If your application is online we can profile it for you, otherwise you can look into profiling here: https://mooseframework.org/application_development/profiling.html.Some things that might make MOOSE slow:1) "too many" quadrature points, although for a constant monomial our default quadrature rule should only produce one quadrature point, so that hopefully isn't it2) We form the global matrix (or for a "lumped" setting, diagonal vector) at every time step. We are planning to add an option to only compute the matrix once if the matrix is supposed to be constant. Is that the case for you?3) Hopefully we are being smart and not reinit'ing the finite element basis every time we move to a new element for a constant monomial, but I can't guarantee that that is the case. A profile would show us this.4) If you have auxiliary variables that can slow things down; that may or may not be the case for you.Anyway there is a lot of room for speculation but a profile would answer these questions. We have a similar thread about explicit time integration performance over here: https://groups.google.com/forum/#!topic/moose-users/TkZnHfrYXds. I think we would really like to improve our explicit performance as it seems our user base is exploring those options a lot more recently; we have generally been focused on implicit simulations in the past.Thanks for your posts!Alex
On Mon, Jun 22, 2020 at 8:07 AM Victoria Korchagova <v.kor...@gmail.com> wrote:
--Classical finite element method (LAGRANGE, FIRST) in MOOSE gives me 21 s for 1D advection equation - less than DG in MOOSE but too slow in comparison with OpenFOAM again.BTW, 1D DG method and 1D FVM method give the same numerical schemes for the uniform mesh, therefore, the time of computation should be the same too... Which operations in MOOSE could be so heavy? Where should we search the place of slowing down? Is it an assembly of global matrix or something more?--Best regards, Victoria
суббота, 20 июня 2020 г., 0:49:54 UTC+3 пользователь Alexander Lindsay написал:Try using ActuallyExplicitEuler as the time integrator. Also are you setting the `implicit = false` flags on non-time objects for the explicit solve?Note that MOOSE DG will be quite a bit slower than a pure FV implementation because the latter can loop just over faces for problems like this while we loop over elements and then query faces because we are a very general finite *element* code.That being said, we have had a couple of folks working on a finite volume implementation in MOOSE that hopefully will end up being of comparable performance with OpenFOAM.On Fri, Jun 19, 2020 at 8:41 AM Victoria Korchagova <v.kor...@gmail.com> wrote:Hello everyone!--I've found strange slow behaviour of MOOSE.I solve 1D scalar transport equation in MOOSE with DG method (test/tests/dgkernels/1d_advection_dg.i). Case parameters were: family is MONOMIAL, order is CONSTANT, 100 cells in 1D mesh, delta_t = 1e-4, 10000 time steps, ExplicitEuler scheme. Total computation time is 36 s.I solve the same case in scalarTransportFoam with the same settings. Computational time here is only 5 seconds!What can be a reason for slow computation in MOOSE case? How to accelerate it?..--Best regards, Victoria
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/0828fdfe-e1b1-475c-872a-bf9a0abf2dc4o%40googlegroups.com.
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/7a9b0fdb-3c97-4aeb-9e23-b4af12ef7cb2o%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/7a9b0fdb-3c97-4aeb-9e23-b4af12ef7cb2o%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/CANFcJrFbd7z39bn6BaM_0aZdzgb5_%2BTifdtgoLvOJY-O6t-wBA%40mail.gmail.com.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/93a1e4e9-57fb-4c0a-ba37-e16422cbf4e0o%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/CANFcJrFqtt8051Hih%3DJOfpREYtFdy0a7mChiw63hbrDgXOPBxw%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/0828fdfe-e1b1-475c-872a-bf9a0abf2dc4o%40googlegroups.com.
You can create an empty repository on github and then push up your local repository.Your OS may have a package available for gperftools. Ubuntu for example has the `libgoogle-perftools-dev` package that you can install with `sudo apt install libgoogle-perftools-dev`. Otherwise you could build it by hand from https://github.com/gperftools/gperftools. You would probably then also want to `go get pprof`, which is the binary you would use to inspect the profile generated while running MOOSE. So yea it's kind of complicated to get setup... :-( We used to include it in our MOOSE environment package but since our transition to conda we haven't come up with a viable means to easily distribute it to our users. Hopefully we can get that done in the not too distant future.Alex
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/93a1e4e9-57fb-4c0a-ba37-e16422cbf4e0o%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/82e53eaf-b7be-426b-a38d-16f02add1498o%40googlegroups.com.
We need to start a new thread on this. The residual evaluation with DG can be a little slower than without DG kernels, but the solving time should be fine. MOOSE even allows you to write your own solver (executioner).I guess I forgot sending out my emails before: Is the problem size too small for performance study? Because it is so small, some other minor overhead like doing output at each time step can show up and MOOSE run slower. If you make the problem have 10,000 cells, what you will see?
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/82e53eaf-b7be-426b-a38d-16f02add1498o%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/c1633c12-fc60-4306-98db-6884986086dco%40googlegroups.com.
Victoria,Number of time steps is not a good way to compare. You'll have to compare runs to a specific simulation time while staying below an error boundary.Daniel
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/c1633c12-fc60-4306-98db-6884986086dco%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/a6dd26d0-f158-4ce6-bfab-189e3b6ea26do%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/CANFcJrGa5w2T3_ZmuL1pUd9crzX3sizTLzyRGpBq56jMMRW5Pw%40mail.gmail.com.
With DG, you cannot use FIRST LAGRANGE shape function, because that shape function is enforced to be C0. More than 20 times slower is indeed a problem. Can you attach your input here? I'd like to take a quick look.
On Tue, Jun 30, 2020 at 9:30 AM Alexander Lindsay <alexlin...@gmail.com> wrote:
MOOSE is designed with large scale problems in mind, so if we compare poorly at the large scale, then we have legitimate concern.For large problems we recommend roughly 20,000 degrees of freedom per process in order to get the most bang for your buck in terms of parallel communication. So if you were to run a 1,000,000 cell problem (with just scalar transport and the original one variable problem you shared, so 1 dof per cell), then we'd recommend approximately 50 processes.Also as Daniel said, and I'm sure you've considered this, make sure that your solve tolerance is the same across the different cases you're running. MOOSE by default solves pretty tightly (1e-8).
On Tue, Jun 30, 2020 at 8:21 AM Alexander Lindsay <alexlin...@gmail.com> wrote:
That's good that t_end is consistent.How about 1,000,000 cells for 1-10 time steps?
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/a6dd26d0-f158-4ce6-bfab-189e3b6ea26do%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/CANFcJrGa5w2T3_ZmuL1pUd9crzX3sizTLzyRGpBq56jMMRW5Pw%40mail.gmail.com.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/153e4b6e-e045-4620-b1b3-e6ad441e8449o%40googlegroups.com.
MOOSE is designed with large scale problems in mind, so if we compare poorly at the large scale, then we have legitimate concern.For large problems we recommend roughly 20,000 degrees of freedom per process in order to get the most bang for your buck in terms of parallel communication. So if you were to run a 1,000,000 cell problem (with just scalar transport and the original one variable problem you shared, so 1 dof per cell), then we'd recommend approximately 50 processes.Also as Daniel said, and I'm sure you've considered this, make sure that your solve tolerance is the same across the different cases you're running. MOOSE by default solves pretty tightly (1e-8).
On Tue, Jun 30, 2020 at 8:21 AM Alexander Lindsay <alexlin...@gmail.com> wrote:
That's good that t_end is consistent.How about 1,000,000 cells for 1-10 time steps?
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/a6dd26d0-f158-4ce6-bfab-189e3b6ea26do%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/ba776140-1598-448a-806b-15f0a390cca7n%40googlegroups.com.