In this page, you can adjust some preferences that affect performance of processing C++ code.
Maximum concurrency of cache tasks
By default, the maximum concurrency of cache tasks is unlimited, that is, ReSharper will use all available CPU cores for building caches in background.
You may need to limit this number if you experience performance problems (lags on non-responsive UI), which may be related to background caches consuming too much memory thus triggering GC too often.
Maximum concurrency of code analysis
By default, the maximum concurrency of code analysis stage is unlimited, that is, ReSharper will use all available CPU cores.
You may need to limit this number if you experience performance problems (lags on non-responsive UI).
Read project properties asynchronously in Visual Studio 15.3 and later
For most of its features (including navigation, code analysis, refactorings, and code completion) , ReSharper builds and maintains a model of the current solution. The model is cached and then used to instantly access any item in the solution structure.
To build this model, ReSharper can use one of the two available Visual Studio APIs — the older one and the new one, which was introduced in Visual Studio 15.3 and is used by default.
This option lets you revert to the older API if you experience some problems with code analysis.
Index stand-alone headers in CMake and Open Folder solutions
When analyzing CMake and Open Folder solutions, ReSharper ignores headers that are not included anywhere. Such solutions can have lots of unused headers and it makes sense to keep this option disabled to improve performance. However, if the solution structure is clear, and there are only a couple of headers that are going to be used soon, you can enable this option to enjoy ReSharper features in these headers.
Prune "Find Usages" search domain using the #includes structure
This option speeds up Find Usages using additional information about references of included files.