# Improving performance in different areas

**URL:** <https://gramps.discourse.group/t/improving-performance-in-different-areas/2529>\
**Category:** Ideas\
**Created:** [June 20, 2022, 1:43pm UTC](https://gramps.discourse.group/t/improving-performance-in-different-areas/2529 "2022-06-20T13:43:16Z")\
**Posts on this page:** 5\
**Page:** 4

<div class="post-metadata">

**Author:** ![ennoborg](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/ennoborg/32/4659_2.png) [@ennoborg](https://gramps.discourse.group/u/ennoborg)\
**Post date:** [July 1, 2022, 4:52pm UTC](https://gramps.discourse.group/t/improving-performance-in-different-areas/2529/61 "2022-07-01T16:52:30Z")

</div>

> [@emyoulation](#):
>
> When I first started using [Deep Connections](https://www.gramps-project.org/wiki/index.php/Addon:Deep_Connections_Gramplet), it was dramatically faster. The performance hit didn’t evolve (as in, I added more nodes to my tree) but was instantaneous: apparently related to a release of Gramps, the relationship calculator or the add-on.

Do you have any idea when this happened? It’s slow in my 3.4.9, so the change must have occurred quite long ago.

When I use the Deep Connections Gramplet, I can also see that it thinks that a spouse is more important than an ancestor, which in my case is quite silly, because the route through that spouse does NOT result in a shorter path.

The other sillyness is indeed following siblings, and passing through the same person twice. And a good algorithm can work very well without artificial limits like the number of generations that we now need to set in preferences. Even 20 years old PAF doesn’t need that, nor any of our current competitors.

---

<div class="post-metadata">

**Author:** ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)\
**Post date:** [July 1, 2022, 5:30pm UTC](https://gramps.discourse.group/t/improving-performance-in-different-areas/2529/62 "2022-07-01T17:30:30Z")

</div>

It could be that my tree outgrew what Deep Connections could handle efficiently. (So performance didn’t degrade on a curve but dropped off a cliff.) But no, I am unaware when performance degraded. My use of the Gramplet was too intermittent.

However, I adopted Gramps AFTER the 4.1.x cycle.

---

<div class="post-metadata">

**Author:** ![emyoulation](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/emyoulation/32/67_2.png) [@emyoulation](https://gramps.discourse.group/u/emyoulation)\
**Post date:** [July 1, 2022, 5:33pm UTC](https://gramps.discourse.group/t/improving-performance-in-different-areas/2529/63 "2022-07-01T17:33:17Z")

</div>

> [@ennoborg](#):
>
> When I use the Deep Connections Gramplet, I can also see that it thinks that a spouse is more important than an ancestor, which in my case is quite silly, because the route through that spouse does NOT result in a shorter path.
> 
> The other sillyness is indeed following siblings, and passing through the same person twice.

Yes, both of those are strange. And it also could benefit from options to ignore linkages through Associations or Note internal links.

---

<div class="post-metadata">

**Author:** ![ennoborg](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/ennoborg/32/4659_2.png) [@ennoborg](https://gramps.discourse.group/u/ennoborg)\
**Post date:** [July 1, 2022, 6:47pm UTC](https://gramps.discourse.group/t/improving-performance-in-different-areas/2529/64 "2022-07-01T18:47:37Z")

</div>

> [@emyoulation](#):
>
> However, I adopted Gramps AFTER the 4.1.x cycle.

OK, in that case it’s likely that your tree outgrew it. The component doesn’t scale very well, and it is very sensitive to changes in the generation limit.

---

<div class="post-metadata">

**Author:** ![ennoborg](https://yyz2.discourse-cdn.com/free1/user_avatar/gramps.discourse.group/ennoborg/32/4659_2.png) [@ennoborg](https://gramps.discourse.group/u/ennoborg)\
**Post date:** [July 2, 2022, 4:28pm UTC](https://gramps.discourse.group/t/improving-performance-in-different-areas/2529/65 "2022-07-02T16:28:20Z")

</div>

> [@StoltHD](#):
>
> I need to add that my Postgresql runs on a Windows Machine with 12 cores 24 thread, the DB Engine has access to 64 Gigabyte of memory, the software is installed on a nvme SSD, the database and indexes are spread on 3 different nvme SSDs, all of the SSDs have 35-55% or more free space and the Swap file function in Windows is turned off.

Wow, that’s bigger than my games machine!

I often use RootsMagic to exchange data with FamilySearch, and that program uses a fully normalized database on SQLite. And when I run that, in Virtualbox, with only 4 GB RAM, and 4 of 8 cores allocated to the VM, on my i7 running Linux on a HDD, it does many things faster than Gramps, like GEDCOM imports, and searching for duplicate persons.

This suggest that, althoug writing data to several tables in a full relational database is slower than writing a single row with a blob in it, the total performance can be better. And I guess that’s because the database interface in RootsMagic is simpler, and faster.

[Previous page](https://gramps.discourse.group/t/improving-performance-in-different-areas/2529.md?page=3)
