Обычно такие проблемы возникают, когда машине выделено мало памяти, которая естественным образом сжирается через некоторое время. Для того, чтобы проверить, так ли это, сделайте:
- Перейдите во вкладку Settings->Appearance
- Отметьте галочкой пункт Show Memory Indicator
- В правом нижнем углу должен появиться такой значок:
- Проверьте его значение, когда начнутся тормоза и кликните на него, чтобы запустить сборщик мусора
Если тормоза после этого исчезли, то делаем следущее:
- Находим файл настроек JVM в директории с исполняемым файлом вида <имя_продукта><разрядность>.vmoptions
- Добавляем (изменяем) следующие пункты:
-Xms128m
-Xmx2048m
-XX:ReservedCodeCacheSize=64m
-XX:+UseCodeCacheFlushing
-XX:+UseCompressedOops
Xms - минимальный раздел используемой RAM для кучи
Xmx - максимальный раздел используемой RAM для кучи
Остальные параметры используются для различных оптимизаций и, чтобы не перевирать, отправляю к первоисточникам.
https://blog.codecentric.de/en/2012/07/useful-jvm-...
habrahabr.ru/post/160049
P.S.
И да, использвание SSD в больших проектах - единественное решение для быстрой индексации.