Difficult to use at >20,000 nodes?

Hello all,

I’ve just installed org roam (v2) for the first time yesterday. I’m using DOOM Emacs. Setting it up and using it is very easy, however most operations are incredibly slow.

  • Org-roam adds at least 10-15 seconds to my startup time
  • Browsing through my nodes using org-roam-buffer-toggle takes at least 10 seconds when moving the point to a new node (unless it doesn’t have any backlink information)
  • Trying to org-roam-node-find or org-roam-node-insert each take about 20-30 seconds
  • Syncing the database takes at least 10 seconds as well

(length (org-roam-node-list)) -> 20536, and I have probably a combined <100 files in my org-roam directory (before installing it, I preferred to have general life-topics grouped inside a file).

As it stands, due to the length of time it takes to do these basic operations a combination of vertico, ripgrep, and the org-agenda have supplanted all of roam’s functionality except for backlinks themselves.

I’ve already maxed out the garbage collection interval as the manual recommends. Are there any other big performance improvements I’m missing, or is >20,000 nodes just simply too many for org-roam to handle?

For fun, here is a photo of org-roam-ui’s rendering of my “knowledge base”.

I have 2,000 nodes in my graph. The first and fourth bullet points you list might be the same for me. But the second and third operations are in my case roughly instantaneous.

Thanks for the data point!