NB68PerfPlan
Plan for NB 6.8 Performance improvements
This is an implementation plan for performance improvements targeted for NetBeans 6.8 release. It covers work done by the performance team and also many important issues solved by other teams. Still, this is not all performance work being done for 6.8 (e.g. fixing reported performance bugs is not included).
For an overview of what has been considered see the list of performance topics.
Contents |
Milestones
This plan is divided into milestones by two weeks. The paragraph under each milestone describes what should be done (finished) by the date of the milestone. The plan is checked and updated weekly (on Monday).
June 8
- File:NB67PerfPlan/yes.png Oleg: Automated Scanning tests for J2SE projects
- NB67PerfPlan/yes.png Jarda: Profile me post mortem: IZ 166023
- NB67PerfPlan/yes.png Tomáš M.: Donate mediawiki PHP project to FitnessViaSamples
- NB67PerfPlan/yes.png Víťa: Donate Maven and C projects to FitnessViaSamples
- File:NB67PerfPlan/yes.png Pavel: Fix the MoveClassPerfTest, FindUsagesPerfTest, FindSubclassesTest.
June 22
- File:NB67PerfPlan/yes.png Pavel: Ergonomics fine tuning: Servers not visible in Tools -> Servers after activating Ruby, IZ 166184
- File:NB67PerfPlan/yes.png Jarda: Fix tests in scalability module
- File:NB67PerfPlan/yes.png Oleg: Fix WhitelistTest$1R.initializationError and WhitelistTest.testWhitelist3
- File:NB67PerfPlan/yes.png Oleg: Cold start numbers on Linux (Solaris)
- tests to measure start time on more platforms (Linux, Solaris)
- NB67PerfPlan/yes.png: Jarda: Finish inception review of DeclarativeActionRegistration
- File:NB67PerfPlan/yes.png: Should avoid rebuilding shared subprojects
July 6
- File:NB67PerfPlan/yes.png Oleg: Results from automated refactoring tests not present in perf. dashboard
- File:NB67PerfPlan/yes.png Jarda: Threads Test
- File:NB67PerfPlan/yes.png Víťa: Logger - Measure time needed for navigator to show content of opened Java file
- File:NB67PerfPlan/yes.png Pavel: Automated test - Measure time needed for navigator to show content of opened Java file
- File:NB67PerfPlan/yes.png Oleg: Add to regular test run - Measure time needed for navigator to show content of opened Java file
- File:NB67PerfPlan/yes.png Pavel: File and analyze issue: Delete of Java file is blocked while scan in progress - all delete problems and snapshot provided in issue
- File:NB67PerfPlan/yes.png Oleg: measure more project types (as donated by Víťa and Tomáš)
- NB67PerfPlan/yes.png Jarda: DeclarativeActionRegistration (API + APISupport)
July 20
- File:NB67PerfPlan/yes.png Jarda: Read Tests analysed and reported and fixed IZ 168874
- File:NB67PerfPlan/yes.png Vita: Files crawling is slow; mostly due to mime-type resolution - IZ 166340
- File:NB67PerfPlan/yes.png Jarda: no file writes on startup (part of commit validation)
- File:NB67PerfPlan/yes.png "Oleg": fix notifications
August 3
August 17
- File:NB67PerfPlan/yes.png ShortcutsFolder is too eager
- File:NB67PerfPlan/yes.png Jarda: FoD FileSystem Always On But Behind Real Ones
- File:NB67PerfPlan/yes.png Pavel: Is Find Usages in 6.7 really that good to not implement identifier index?
- DBObject usages - 5.5 - 75-95s - Mx256m
- DBObject usages - 6.5.1 - OOME, with Mx increased to 768M 50-65s
- DBObject usages - 6.7.1 - 140-175s, with Mx increased to 768M 85-93s
- DBObject usages - trunk - 155-170s - default -Mx, in this case 500M. (with Mx256m OutOfMemoryError), with Mx 768M 75-80s
- DBObject usages - eclipse galileo - 12-15s
- identifier index improves some specific cases (method searches etc.), but it seems we have big problem with underlying infrastructure
- File:NB67PerfPlan/yes.png Pavel: Multi-selection is no longer blocked - Fix Delete of Java file is blocked while scan in progress
- File:NB67PerfPlan/yes.png Max: Custom Side Bars pre-initialization outside of AWT IZ 168415
- NB67PerfPlan/yes.png Pavel & Jarda: Scan On Demand
- File:NB67PerfPlan/yes.png list of usecases (test plan)
- progress of background scanning
- File:NB67PerfPlan/yes.png Pavel: Regression in refactoring tests - caused by fix #167773
- NB67PerfPlan/yes.png Tomáš H.: FitnessViaPostMortem improvements
- File:NB67PerfPlan/yes.png Oleg: divide 'scanning multiple projects' test into separate test cases
- File:NB67PerfPlan/yes.png Tomáš: Issue 170308 Remove PhpVisibilityQuery & use FilteringPathResourceImplementation
August 31
- Jarda: Read Tests on Solaris and Mac OS X
- Jarda: Read Tests on Windows
- File:NB67PerfPlan/yes.pngJarda & Lahváč: Leaking projects - IZ 143593 maybe more
- NB67PerfPlan/yes.png needs fix for Issue 166020 too
- File:NB67PerfPlan/yes.png enable testGCProjects in java.kit/**/MemoryValidationTest.java
September 14
- Pavel & Vita: Issue 133943 Make the IDE usable during scanning. Do not block the following operations even during scanning (don't need to wait):
- File:NB67PerfPlan/yes.png Dan Prusa: Debug (run in debugger) and Attach debugger.
- NB67PerfPlan/yes.png Tomas Z.: Run project - main class check should not block (Issue 166527).
- NB67PerfPlan/yes.png Pavel: Delete files - Issue 168267.
- File:NB67PerfPlan/yes.png Tomas Z.: Go to Type (access to index even during scanning, remove "BIG" lock held by indexing infrastructure even when not needed).
- File:NB67PerfPlan/yes.png Pavel: Issue 138880 - Gene Mutschler promised he will try to provide project. (needs discussion to his managers) - - closed, no additional data provided.
- File:NB67PerfPlan/yes.png Pavel: Single file delete still blocked, either Honza P. will provide the fix or we will remove the Safe Delete extension for single selection too - Delete of Java file is blocked while scan in progress
- NB67PerfPlan/yes.png FitnessWithoutTouches - tests of disk touches in editor
- File:NB67PerfPlan/yes.png Honza P. & Pavel Find usages improvements (mesurements, umbrella issue)
September 28
- NB67PerfPlan/yes.png Vita: More efficient batch operations I: Don't scan during deleting multiple files Issue 172199
- File:NB67PerfPlan/yes.png Jarda: FoD activation time test
October 12
- NB67PerfPlan/yes.png Jarda: ScanOnDemand on Autopdate
- Pavel & Vita: Issue 133943 Make the IDE usable during scanning (Scanning and Data Usage)
- NB67PerfPlan/yes.png Done for 6.8 by unblocking run, debug, delete and Go to Type. See also IDEUsableWhenScanning.
October 26
- File:NB67PerfPlan/yes.png Víťa: More efficient batch operations II: Interaction with VCS Issue 167098
- File:NB67PerfPlan/yes.png Jarda: Slowness detector - production mode
Task not yet included in the plan
- Vita: Allow modules to bundle preindexed data
- Tomas Hurka, Pavel: Do not initialize profiler until first used
- Hanz: Expanding Java Packages is slow
- cancelled Find Usages - identifier index, Jan Pokorský
- Fixed by improving I/O operations for 6.7
- See also specific Java & Editor performance tasks.
- Declarative UI
- Winsys should not instantiate closed TC in sliding mode
- Why showing full toolbar/menu is more than 4s slower than ergo toolbar? Maybe IZ 13540 and others.
- Multi selection of nodes and popup invocation in views is too slow - IZ 80723 and others
- Navigator builds the panel content during TC open even when

