1 /* 2 * Copyright (c) 2016, 2019, Red Hat, Inc. All rights reserved. 3 * 4 * This code is free software; you can redistribute it and/or modify it 5 * under the terms of the GNU General Public License version 2 only, as 6 * published by the Free Software Foundation. 7 * 8 * This code is distributed in the hope that it will be useful, but WITHOUT 9 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 10 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 11 * version 2 for more details (a copy is included in the LICENSE file that 12 * accompanied this code). 13 * 14 * You should have received a copy of the GNU General Public License version 15 * 2 along with this work; if not, write to the Free Software Foundation, 16 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 17 * 18 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 19 * or visit www.oracle.com if you need additional information or have any 20 * questions. 21 * 22 */ 23 24 #ifndef SHARE_GC_SHENANDOAH_SHENANDOAH_GLOBALS_HPP 25 #define SHARE_GC_SHENANDOAH_SHENANDOAH_GLOBALS_HPP 26 27 #define GC_SHENANDOAH_FLAGS(develop, \ 28 develop_pd, \ 29 product, \ 30 product_pd, \ 31 diagnostic, \ 32 diagnostic_pd, \ 33 experimental, \ 34 notproduct, \ 35 manageable, \ 36 product_rw, \ 37 lp64_product, \ 38 range, \ 39 constraint, \ 40 writeable) \ 41 \ 42 experimental(size_t, ShenandoahHeapRegionSize, 0, \ 43 "Size of the Shenandoah regions. Set to zero to detect " \ 44 "automatically.") \ 45 \ 46 experimental(size_t, ShenandoahTargetNumRegions, 2048, \ 47 "Target number of regions. We try to get around that many " \ 48 "regions, based on Shenandoah{Min,Max}RegionSize.") \ 49 \ 50 experimental(size_t, ShenandoahMinRegionSize, 256 * K, \ 51 "Minimum Shenandoah heap region size.") \ 52 \ 53 experimental(size_t, ShenandoahMaxRegionSize, 32 * M, \ 54 "Maximum Shenandoah heap region size.") \ 55 \ 56 experimental(intx, ShenandoahHumongousThreshold, 100, \ 57 "How large should the object be to get allocated in humongous " \ 58 "region, in percents of heap region size. This also caps the " \ 59 "maximum TLAB size.") \ 60 range(1, 100) \ | 1 /* 2 * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. 3 * Copyright (c) 2016, 2019, Red Hat, Inc. All rights reserved. 4 * 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 7 * published by the Free Software Foundation. 8 * 9 * This code is distributed in the hope that it will be useful, but WITHOUT 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 12 * version 2 for more details (a copy is included in the LICENSE file that 13 * accompanied this code). 14 * 15 * You should have received a copy of the GNU General Public License version 16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20 * or visit www.oracle.com if you need additional information or have any 21 * questions. 22 * 23 */ 24 25 #ifndef SHARE_GC_SHENANDOAH_SHENANDOAH_GLOBALS_HPP 26 #define SHARE_GC_SHENANDOAH_SHENANDOAH_GLOBALS_HPP 27 28 #define GC_SHENANDOAH_FLAGS(develop, \ 29 develop_pd, \ 30 product, \ 31 product_pd, \ 32 diagnostic, \ 33 diagnostic_pd, \ 34 experimental, \ 35 notproduct, \ 36 manageable, \ 37 product_rw, \ 38 lp64_product, \ 39 range, \ 40 constraint) \ 41 \ 42 experimental(size_t, ShenandoahHeapRegionSize, 0, \ 43 "Size of the Shenandoah regions. Set to zero to detect " \ 44 "automatically.") \ 45 \ 46 experimental(size_t, ShenandoahTargetNumRegions, 2048, \ 47 "Target number of regions. We try to get around that many " \ 48 "regions, based on Shenandoah{Min,Max}RegionSize.") \ 49 \ 50 experimental(size_t, ShenandoahMinRegionSize, 256 * K, \ 51 "Minimum Shenandoah heap region size.") \ 52 \ 53 experimental(size_t, ShenandoahMaxRegionSize, 32 * M, \ 54 "Maximum Shenandoah heap region size.") \ 55 \ 56 experimental(intx, ShenandoahHumongousThreshold, 100, \ 57 "How large should the object be to get allocated in humongous " \ 58 "region, in percents of heap region size. This also caps the " \ 59 "maximum TLAB size.") \ 60 range(1, 100) \ |