34rc01-01.nps "small freeze in a small module after ctrl alt l to remove an import" === 3000 ms CPU time on EDT 1400 ms is spent in native AWT UI methods 400 ms - sun.awt.windows.WGlobalCursorManager.findHeavyweightUnderCursor[native] 300 ms - sun.awt.windows.WGlobalCursorManager.setCursor[native] 300 ms - sun.java2d.loops.FillRect.FillRect[native] 200 ms - sun.awt.windows.WComponentPeer.getLocationOnScreen[native] 100 ms - sun.java2d.loops.MaskFill.FillAAPgram[native] 100 ms - sun.java2d.loops.DrawGlyphListLCD.DrawGlyphListLCD[native] 1400 ms - KotlinImportOptimizer$OptimizeProcess.execute() 700 ms - collectDescriptorsToImport() 300 ms - KotlinScriptDependenciesClassFinder.findClass() 600 ms - prepareOptimizedImports() 200 ms - GlobalSearchScope$FilesScope.contains() [NOTE: fixed in 2019.1 merge] Caveat: 100 ms sampling interval for 3000 ms freeze => slightly noisy results 34rc01-02.nps "very long freeze in the main module + wait until the full analysis is made after ctrl alt l to remove an import" === 26000 ms CPU time on EDT 21800 ms - KotlinImportOptimizer$OptimizeProcess.execute 13500 ms - KotlinScriptDependenciesClassFinder.findClass 9600 ms - DirectoryIndexImpl.getInfoForFile() 8200 ms - kotlin.LibraryWithoutSourceScope.getFileRoot 1050 ms - GroovyClassFinder.findClass 2500 ms spent in native AWT UI methods 1000 ms - sun.awt.windows.WGlobalCursorManager.setCursor[native] 900 ms - sun.awt.windows.WGlobalCursorManager.findHeavyweightUnderCursor[native] 600 ms - sun.awt.windows.WComponentPeer.getLocationOnScreen[native] 34rc01-03-fileopen.nps "very long syntax coloring + analysis when opening a large file" === 24s CPU time on FJ pooled threads (which are used for syntax highlighting) But, 100s real time. Suggests non-parallelized work or lock contention. Of this: 18s CPU time / 70s real time in kotlin.ModuleResolutionFacadeImpl.analyze [NOTE: real time is accumulated per thread, and there are over 10 FJ pooled threads] Related: 43500 ms real time in LockBasedLazyResolveStorageManager$LockProtectedContext.get But only 1900 ms CPU time. No calls to KotlinScriptDependenciesClassFinder in this one. 34rc01-04-adderror.nps === This one looks similar to 34rc01-03-fileopen.nps