Events observation and control for performance

Hi,

I work with large markdown files (MBs). One issue I have is that after renaming headings the typing performance (which is not great as a baseline) degrades drastically (I estimate ~0.1-0.5 seconds delay on keystrokes) and I have to quit and reopen.
(I lose all the view states across all my windows and tabs when I reopen).
I suspect that there are plugins that reparse the whole file (or vault) on each keystroke.

I’d like to get a better understanding on what plugins are involved at which actions (the events each plugin listens to) and, ideally, get a plugin + event-handler statistic (e.g. histogram) so I can get an idea of what’s causing issues and be able to raise the issue accordingly.

I tried using the dev tools performance profiler but I’m getting too much cryptic low level stuff. I need something that identifies strictly at Obsidian API level (plugins, events, handlers).

Separately, it would be nice, if certain frequent events like keystrokes, scrolling, etc. could be throttled, so that a plugin that does synchronous work on each keystroke could be throttled by not getting every even t. I understand this is an advanced config, potentially causign issues, hovewever, I’d expect something like chrome://flags for stuff like this.

Alternatively if this is possible directly through the developer console, I’d appreciate some guidance on how to throttle events.

It’s impossible to track down performance issues.
Here’s an example of how performance data looks.
In this example it took ~10 seconds to type a word (Obsidian by and large unresponsive with >80% system CPU

The performance degrades further with every heading rename, rendering Obisdian unasable after 5-10 renames.

I suspect this is always the case, but less noticeable with smaller documents.