Background/Situation
JetBrains IDEs run a PerformanceWatcher that captures automatic thread dumps when the IDE UI thread or the pooled coroutine dispatcher stops responding within a configured threshold (default 5 seconds). Dumps are written under the IDE log directory in folders named threadDumps-Dispatchers.Default-*, threadDumps-Dispatchers.IO-*, or threadDumps-freeze-*.
The dumps are useful diagnostics when an IDE freezes genuinely. They can become noise when:
- The IDE shares CPU with another heavy task (a VM running a plugin development sandbox, a large build, a profiler, etc.).
- A regression causes excessive dumping. Tracked in IntelliJ is generating tons of thread dumps, fixed in IntelliJ Platform 2026.1.2 and 2026.2 EAP 1: the fix caps dumps at 10 per IDE session and raises the freeze threshold from 5 to 15 seconds.
Question
How to disable automatic thread dumps, or suppress the "not responding" popup, in IntelliJ Platform-based IDEs?
Answer
Recommended: upgrade to a build with the throttling fix
Upgrade to IntelliJ Platform-based IDE version 2026.1.2 or 2026.2 EAP 1 or later. The fix caps automatic dumps at 10 per IDE session and raises the freeze threshold from 5 to 15 seconds, eliminating disk-space and log-noise issues without disabling the diagnostic entirely.
Disable the pooled-dispatcher thread dumps entirely
Open Help | Edit Custom VM Options, add the following line, and restart the IDE:
-Dperformance.watcher.pooled.enabled=false
This stops thread dumps triggered by CoroutineDispatcherWatcher (the threadDumps-Dispatchers.Default-* and threadDumps-Dispatchers.IO-* folders).
Suppress only the "not responding" popup
The popup is triggered by the same threshold used for UI-thread freeze detection. Raise the threshold via Registry:
- Press Shift twice to open Search Everywhere.
- Type
Registryand open the Registry dialog. - Locate the key
performance.watcher.unresponsive.interval.ms. - Increase the value. The default is 1000 ms in Rider and 5000 ms in other IDEs; 15000 ms or higher hides most transient popups.
Tune the pooled variant
Additional Registry keys for the pooled coroutine dispatcher (used by CoroutineDispatcherWatcher):
-
performance.watcher.pooled.enabled— master switch (equivalent to the VM option above) -
performance.watcher.pooled.unresponsive.interval.ms— minimum freeze duration before a dump -
performance.watcher.pooled.maximum.dumps— cap per IDE session -
performance.watcher.pooled.progressive.interval— progressive backoff after the third dump
When to keep automatic dumps enabled
Automatic thread dumps are the primary diagnostic artifact when reporting an IDE freeze or hang. Before disabling them, see How to get a thread dump when IDE hangs and doesn't respond — the same automatic dumps are what JetBrains support requests when investigating UI freezes. Re-enable by removing the VM option or restoring the Registry defaults before submitting a freeze report.
Comments
0 comments
Please sign in to leave a comment.