craffael / lehrfempp

Simple Finite Element Framework for research and education
MIT License
28 stars 17 forks source link

Profiling #97

Open hiptmair opened 5 years ago

hiptmair commented 5 years ago

It would be important to profile the example implementing a linear finite element solver for a full-featured elliptic boundary value problem (examples/ell_bvp_linfe) in order to identify performance bottlenecks in LehrFEM++. This example is currently in the lagr_fe_demo branch, but will be merged into master soon.

craffael commented 5 years ago

I've profiled ell_bvp_linfe as you've suggested on Windows and on my laptop. The problem is a bit that it is not so easy to share the result with you in an easy way. I've just extracted the function calls made from main() in the following excel file: https://www.dropbox.com/s/b4ifubddsf3i1el/Report20190307-2341_CallTreeSummary.xlsx?dl=0

As you can see about

craffael commented 5 years ago

Taking a look from the bottom up, i.e. looking at in which function most time is spent exclusively, i.e. excluding calls to child functions, we get the following: https://www.dropbox.com/s/qijwj9y3907725o/Report20190307-2341_FunctionSummary.xlsx?dl=0

Here we can see that

hiptmair commented 5 years ago

Thanks a lot for these figures.