See evaluation.
The VM currently creates all GC worker threads during initialization, and all workers participate in every GC. There is work in progress to change the latter property (6593758), so that the number of active GC worker threads can vary from one collection to the next based on the amount of work. Once that feature is enabled, GC worker threads should be created lazily (only when needed) and destroyed when not needed. This would save memory and improve startup time (slightly) for applications which do not use GC heavily.
The VM currently creates all GC worker threads during initialization, and all workers participate in every GC. There is work in progress to change the latter property (6593758), so that the number of active GC worker threads can vary from one collection to the next based on the amount of work. Once that feature is enabled, GC worker threads should be created lazily (only when needed) and destroyed when not needed. This would save memory and improve startup time (slightly) for applications which do not use GC heavily.
- duplicates
-
JDK-7189147 GC threads should be created as needed not all at once
-
- Closed
-
- relates to
-
JDK-8131932 Ergonomics oversize number of GC threads for small JVMs on large systems
-
- Open
-
-
JDK-8213224 Move code related to GC threads calculation out of AdaptiveSizePolicy
-
- Resolved
-
-
JDK-6593758 RFE: Enhance GC ergonomics to dynamically choose ParallelGCThreads
-
- Closed
-
-
JDK-7189147 GC threads should be created as needed not all at once
-
- Closed
-
-
JDK-8231669 Remove WorkerManager abstraction to support multiple work gang implementations
-
- Closed
-
(1 relates to)