exadg icon indicating copy to clipboard operation
exadg copied to clipboard

Look over performance of boundary condition detection

Open kronbichler opened this issue 3 years ago • 0 comments

Looking at #347, I realize that we keep adding "slow" data structures like std::map or std::set to hold the information about boundary conditions. While these are certainly fine for setup purposes, the fact that we call the function https://github.com/exadg/exadg/blob/aec5721276aa012b3121b4daafc70b8c6505a0d5/include/exadg/incompressible_navier_stokes/user_interface/boundary_descriptor.h#L125-L136 in integrator loops like https://github.com/exadg/exadg/blob/aec5721276aa012b3121b4daafc70b8c6505a0d5/include/exadg/incompressible_navier_stokes/spatial_discretization/operators/viscous_operator.cpp#L181 might at some point start to affect run time, at least for low to intermediate polynomial degrees where there are not too many quadrature points. This should be done by looking at a profiler and assess this cost. The good thing is that the code is nicely encapsulated, so we would only need to see over the place in boundary_descriptor.h without touching any other part.

kronbichler avatar Mar 06 '23 17:03 kronbichler