Filtering. Is there a way better than another?

I come back to this remark by wondering if there are methods or orders of filters better than others (when possible), which allow the filters to be executed more quickly. I’m a big user of filters, I have hundreds of them, and it’s true that they can sometimes be slow. Would there be preferred filters (one that looks for type and the other that looks for type, date, description… in which only the type is indicated, for example)?

Do you have any idea about the performance of the filters and how best to use them?

One of the useful beta test features that @cdhorn incorporated into his CardView was a timing functionality so he could troubleshoot performance issues.

Perhaps we could prevail upon @kku to add a timing functionality to the “Test Run” of FilterParams and a similar checkbox for the SuperTool’s results when Executing?

Including timing is probably just a matter of adding a few lines before & after the code block passed through the Query Gramplet.

1 Like

Found an interesting article “Python Timer Functions: Three Ways to Monitor Your Code by Geir Arne Hjelle Mar 21, 2022” on RealPython dot com.

He notes some methods offer threaded timings. And since there have been some experiments in pushing CPU-hungry Gramps add-ons to idle cores in a multi-core system, that sounds good too.

2 Likes
  1. Filters used in the filter sidebar are slowest, especially multi-step filters where each step of is slowing the process.
  2. Supertool and filter rule addons combining multi-step filters are faster.
  3. Searching cached data e.g. searchbar in person list view is also faster, but only allows searching displayed data.
1 Like

SuperTool already includes a gross execution timing (measured in hundredths of a second) above the results readout.
image

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.