Mercurial > hg > graal-jvmci-8
comparison src/share/vm/utilities/workgroup.hpp @ 2369:92da084fefc9
6668573: CMS: reference processing crash if ParallelCMSThreads > ParallelGCThreads
Summary: Use _max_num_q = max(discovery_degree, processing_degree), and let balance_queues() redistribute from discovery_degree to processing_degree of queues. This should also allow a more dynamic and flexible parallelism policy in the future.
Reviewed-by: jmasa, johnc
author | ysr |
---|---|
date | Thu, 17 Mar 2011 10:32:46 -0700 |
parents | f95d63e2154a |
children | f08d439fab8c |
comparison
equal
deleted
inserted
replaced
2368:dde920245681 | 2369:92da084fefc9 |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved. | 2 * Copyright (c) 2002, 2011, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * | 4 * |
5 * This code is free software; you can redistribute it and/or modify it | 5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as | 6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
33 # include "thread_solaris.inline.hpp" | 33 # include "thread_solaris.inline.hpp" |
34 #endif | 34 #endif |
35 #ifdef TARGET_OS_FAMILY_windows | 35 #ifdef TARGET_OS_FAMILY_windows |
36 # include "thread_windows.inline.hpp" | 36 # include "thread_windows.inline.hpp" |
37 #endif | 37 #endif |
38 | |
39 // Task class hierarchy: | |
40 // AbstractGangTask | |
41 // AbstractGangTaskWOopQueues | |
42 // | |
43 // Gang/Group class hierarchy: | |
44 // AbstractWorkGang | |
45 // WorkGang | |
46 // FlexibleWorkGang | |
47 // YieldingFlexibleWorkGang (defined in another file) | |
48 // | |
49 // Worker class hierarchy: | |
50 // GangWorker (subclass of WorkerThread) | |
51 // YieldingFlexibleGangWorker (defined in another file) | |
38 | 52 |
39 // Forward declarations of classes defined here | 53 // Forward declarations of classes defined here |
40 | 54 |
41 class WorkGang; | 55 class WorkGang; |
42 class GangWorker; | 56 class GangWorker; |