aboutsummaryrefslogtreecommitdiff
path: root/src/share/vm/memory/collectorPolicy.cpp
AgeCommit message (Collapse)Author
2014-05-228037816: Fix for 8036122 breaks build with Xcode5/clangdrchase
8043029: Change 8037816 breaks HS build with older GCC versions which don't support diagnostic pragmas 8043164: Format warning in traceStream.hpp Summary: Backport of main fix + two corrections, enables clang compilation, turns on format attributes, corrects/mutes warnings Reviewed-by: kvn, coleenp, iveresov, twisti
2014-02-218035057: NewSize ergonomics wrong when setting small or unaligned size on ↵sjohanss
command line Summary: Making sure that if NewSize is set on the command line it should be used for both min and initial size even if it is re-aligned. Reviewed-by: jwilhelm, jmasa
2014-04-238033426: Scale initial NewSize using NewRatio if not set on command linesjohanss
Summary: Now using NewRatio to size initial NewSize if not specified on commandline. Reviewed-by: jmasa, jwilhelm
2013-11-118028093: Initial young size is smaller than minimum young sizejwilhelm
Summary: Remove min_gen1_size argument from adjust_gen0_sizes() Reviewed-by: tschatzl, brutisso
2013-11-108027911: Assertion in the collector policy when running ↵jwilhelm
gc/arguments/TestMaxNewSize.java Summary: Update NewSize when _initial_gen0_size is changed Reviewed-by: tschatzl, brutisso
2013-11-018016309: assert(eden_size > 0 && survivor_size > 0) failed: just checkingjwilhelm
7057939: jmap shows MaxNewSize=4GB when Java is using parallel collector Summary: Major cleanup of the collectorpolicy classes Reviewed-by: tschatzl, jcoomes
2013-10-218026853: Prepare GC code for collector policy regression fixjwilhelm
Summary: Cleanup related to the NewSize and MaxNewSize bugs Reviewed-by: tschatzl, jcoomes, ehelin
2013-10-218026852: Use restricted_align_down in collector policy codejwilhelm
Summary: Moved restricted_align_down to globalDefinitions and renamed it align_size_down_bounded Reviewed-by: stefank, mgerdin, tschatzl
2013-10-218026851: Remove unnecessary code in GenRemSetjwilhelm
Summary: Removed the GenRemSet::rem_set_name() since we only have one remset. Reviewed-by: stefank, mgerdin, tschatzl
2013-10-078024547: MaxMetaspaceSize should limit the committed memory used by the ↵stefank
metaspaces Reviewed-by: brutisso, jmasa, coleenp
2013-10-048025854: Use "young gen" instead of "eden"jwilhelm
Summary: Changed a few descriptions and variable names to young gen. Reviewed-by: tschatzl, jcoomes
2013-10-038025852: Remove unnecessary setters in collector policy classesjwilhelm
Summary: Use instance variables directly within the collector policy classes and remove unused setters. Reviewed-by: tschatzl, jcoomes
2013-10-038025855: Simplify GenRemSet code slightlyjwilhelm
Summary: Remove a few redundant switch-statements Reviewed-by: jcoomes, tschatzl
2013-10-018025313: MetaspaceMemoryPool incorrectly reports undefined size for maxehelin
Reviewed-by: stefank, tschatzl --HG-- extra : rebase_source : 09d641fdddcb1f1c45dd8878c5cc50eecfa0a28f
2013-09-138024650: Don't adjust MaxMetaspaceSize up to MetaspaceSizestefank
Reviewed-by: jwilhelm, brutisso, tschatzl
2013-09-118010722: assert: failed: heap size is too big for compressed oopstschatzl
Summary: Use conservative assumptions of required alignment for the various garbage collector components into account when determining the maximum heap size that supports compressed oops. Using this conservative value avoids several circular dependencies in the calculation. Reviewed-by: stefank, dholmes
2013-08-168007074: SIGSEGV at ParMarkBitMap::verify_clear()stefank
Summary: Replace the broken large pages implementation on Linux. New flag: -XX:+UseTransparentHugePages - Linux specific flag to turn on transparent huge page hinting with madvise(..., MAP_HUGETLB). Changed behavior: -XX:+UseLargePages - tries to use -XX:+UseTransparentHugePages before trying other large pages implementations (on Linux). Changed behavior: -XX:+UseHugeTLBFS - Use upfront allocation of Large Pages instead of using the broken implementation to dynamically committing large pages. Changed behavior: -XX:LargePageSizeInBytes - Turned off the ability to use this flag on Linux and provides warning to user if set to a value different than the OS chosen large page size. Changed behavior: Setting no large page size - Now defaults to use -XX:UseTransparentHugePages if the OS supports it. Previously, -XX:+UseHugeTLBFS was chosen if the OS was configured to use large pages. Reviewed-by: tschatzl, dcubed, brutisso
2013-05-17Mergejwilhelm
2013-05-156843347: Boundary values in some public GC options cause crashestschatzl
Summary: Setting some public integer options to specific values causes crashes or undefined GC behavior. This patchset adds the necessary argument checking for these options. Reviewed-by: jmasa, brutisso
2013-05-148012902: remove use of global operator new - take 2minqi
Summary: The fix of 8010992, disable use of global operator new and new[] which caused failure on some tests. This takes two of the bugs also add ALLOW_OPERATOR_NEW_USAGE to prevent crash for third party code calling operator new of jvm on certain platforms. Reviewed-by: coleenp, dholmes, zgu Contributed-by: yumin.qi@oracle.com
2013-05-138014058: Regression tests for 8006088tschatzl
Summary: The patch for 8006088 misses regression tests after a merge error, this CR provides them. Reviewed-by: jwilhelm, tamao, jmasa
2013-05-068006088: Incompatible heap size flags accepted by VMtschatzl
Summary: Make processing of minimum, initial and maximum heap size more intiutive by removing previous limitations on allowed values, and make error reporting consistent. Further, fix errors in ergonomic heap sizing. Reviewed-by: johnc, jwilhelm, tamao
2013-05-068013791: G1: G1CollectorPolicy::initialize_flags() may set min_alignment > ↵brutisso
max_alignment Summary: Make sure max alignemnt is at least as large as min alignment Reviewed-by: johnc, jmasa, tschatzl --HG-- extra : rebase_source : 28eba4104607ec7a494d3035ab7a957961e80a27
2013-03-287014552: gc/lock/jni/jnilockXXX works too slow on 1-processor machinemgerdin
Summary: Keep a counter of how many times we were stalled by the GC locker, add a diagnostic flag which sets the limit. Reviewed-by: brutisso, ehelin, johnc
2013-03-126976528: PS: assert(!limit_exceeded || softrefs_clear) failed: Should have ↵jmasa
been cleared Reviewed-by: johnc --HG-- extra : rebase_source : c2e7aec81701de7148a4c4375401430cd1a96cb8
2013-02-148007764: Wrong initialized value of max_gc_pause_sec for an instance of ↵tamao
class AdaptiveSizePolicy Summary: This is a fix of an initialization mistake for class AdaptiveSizePolicy. Reviewed-by: jmasa Contributed-by: Tao Mao <tao.mao@oracle.com> --HG-- extra : rebase_source : fa2443402ad031036cc9faefa516ab46e750b4ad
2013-02-08Mergebrutisso
2013-01-286348447: Specifying -XX:OldSize crashes 64-bit VMsjwilhelm
Summary: Heap size will be set to allow for OldSize to fit. Also reviewed by vitalyd@gmail.com Reviewed-by: ehelin, jmasa --HG-- extra : rebase_source : 21958ef21c782eced65447816204b67337c9a62a
2013-01-238005915: Unify SERIALGC and INCLUDE_ALTERNATE_GCSjprovino
Summary: Rename INCLUDE_ALTERNATE_GCS to INCLUDE_ALL_GCS and replace SERIALGC with INCLUDE_ALL_GCS. Reviewed-by: coleenp, stefank
2012-12-308005396: Use ParNew with only one thread instead of DefNew as default for ↵brutisso
CMS on single CPU machines Reviewed-by: jmasa, jcoomes
2012-12-038005082: NPG: Add specialized Metachunk sizes for reflection and anonymous ↵jmasa
classloaders Reviewed-by: johnc, coleenp
2012-11-278003935: Simplify the needed includes for using Thread::current()stefank
Reviewed-by: dholmes, rbackman, coleenp
2012-10-308000988: VM deadlock when running btree006 on windows-i586jmasa
Reviewed-by: johnc, jcoomes, ysr --HG-- extra : rebase_source : 35549008a4b4f4cfce9c7ed327e35d8635b00946
2012-09-187197557: NPG: nsk/sysdict/vm/stress/chain/chain004 hangs intermittentlyjmasa
Reviewed-by: johnc, ysr --HG-- extra : rebase_source : 4915fbfa5fb22ed9a185b0e2e78c1200559869ce
2012-09-016964458: Reimplement class meta-data storage to use native memorycoleenp
Summary: Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland Contributed-by: jmasa <jon.masamitsu@oracle.com>, stefank <stefan.karlsson@oracle.com>, mgerdin <mikael.gerdin@oracle.com>, never <tom.rodriguez@oracle.com> --HG-- rename : src/cpu/sparc/vm/dump_sparc.cpp => src/cpu/sparc/vm/metaspaceShared_sparc.cpp rename : src/cpu/x86/vm/dump_x86_32.cpp => src/cpu/x86/vm/metaspaceShared_x86_32.cpp rename : src/cpu/x86/vm/dump_x86_64.cpp => src/cpu/x86/vm/metaspaceShared_x86_64.cpp rename : src/cpu/zero/vm/dump_zero.cpp => src/cpu/zero/vm/metaspaceShared_zero.cpp rename : src/share/vm/oops/compiledICHolderOop.cpp => src/share/vm/oops/compiledICHolder.cpp rename : src/share/vm/oops/compiledICHolderOop.hpp => src/share/vm/oops/compiledICHolder.hpp rename : src/share/vm/oops/constMethodOop.cpp => src/share/vm/oops/constMethod.cpp rename : src/share/vm/oops/constMethodOop.hpp => src/share/vm/oops/constMethod.hpp rename : src/share/vm/oops/constantPoolOop.cpp => src/share/vm/oops/constantPool.cpp rename : src/share/vm/oops/constantPoolOop.hpp => src/share/vm/oops/constantPool.hpp rename : src/share/vm/oops/cpCacheOop.cpp => src/share/vm/oops/cpCache.cpp rename : src/share/vm/oops/cpCacheOop.hpp => src/share/vm/oops/cpCache.hpp rename : src/share/vm/oops/methodOop.cpp => src/share/vm/oops/method.cpp rename : src/share/vm/oops/methodOop.hpp => src/share/vm/oops/method.hpp rename : src/share/vm/oops/methodDataOop.cpp => src/share/vm/oops/methodData.cpp rename : src/share/vm/oops/methodDataOop.hpp => src/share/vm/oops/methodData.hpp
2011-09-257089790: integrate bsd-port changesnever
Reviewed-by: kvn, twisti, jrose Contributed-by: Kurt Miller <kurt@intricatesoftware.com>, Greg Lewis <glewis@eyesbeyond.com>, Jung-uk Kim <jkim@freebsd.org>, Christos Zoulas <christos@zoulas.com>, Landon Fuller <landonf@plausible.coop>, The FreeBSD Foundation <board@freebsdfoundation.org>, Michael Franz <mvfranz@gmail.com>, Roger Hoover <rhoover@apple.com>, Alexander Strange <astrange@apple.com>
2011-06-166994322: Remove the is_tlab and is_noref / is_large_noref parameters from ↵tonyp
the CollectedHeap Summary: Remove two unused parameters from the mem_allocate() method and update its uses accordingly. Reviewed-by: stefank, johnc
2011-04-297040068: CMS: Possibly unsafe initialization of ↵brutisso
BlockOffsetArrayUseUnallocatedBlock Summary: BlockOffsetArrayUseUnallocatedBlock was intended to be turned off as part of BUG 6948538 but a code line in collectorPolicy.cpp actually kept it turned on. Reviewed-by: jwilhelm, ysr
2011-03-166896099: Integrate CMS heap ergo with default heap sizing ergoysr
6627787: CMS: JVM refuses to start up with -Xms16m -Xmx16m 7000125: CMS: Anti-monotone young gen sizing with respect to maximum whole heap size specification 7027529: CMS: retire CMSUseOldDefaults flag Summary: Simplify CMS heap sizing code, relying on ergonomic initial sizing consistent with other collectors for the most part, controlling only young gen sizing to rein in pause times. Make CMS young gen sizing default statically cpu-dependant. Remove inconsistencies wrt generation sizing and policy code, allowing for the fixing for 6627787 and 7000125. For 7027529, retire the flag CMSUseOldDefaults which had been introduced as a bridge from JDK 5 to JDK 6 a number of years ago. Reviewed-by: brutisso, poonam
2010-12-077001033: assert(gch->gc_cause() == GCCause::_scavenge_alot || ↵ysr
!gch->incremental_collection_failed()) 7002546: regression on SpecJbb2005 on 7b118 comparing to 7b117 on small heaps Summary: Relaxed assertion checking related to incremental_collection_failed flag to allow for ExplicitGCInvokesConcurrent behaviour where we do not want a failing scavenge to bail to a stop-world collection. Parameterized incremental_collection_will_fail() so we can selectively use, or not use, as appropriate, the statistical prediction at specific use sites. This essentially reverts the scavenge bail-out logic to what it was prior to some recent changes that had inadvertently started using the statistical prediction which can be noisy in the presence of bursty loads. Added some associated verbose non-product debugging messages. Reviewed-by: johnc, tonyp
2010-11-236989984: Use standard include model for Hospotstefank
Summary: Replaced MakeDeps and the includeDB files with more standardized solutions. Reviewed-by: coleenp, kvn, kamg --HG-- rename : make/windows/makefiles/makedeps.make => make/windows/makefiles/projectcreator.make rename : src/share/tools/MakeDeps/ArgsParser.java => src/share/tools/ProjectCreator/ArgsParser.java rename : src/share/tools/MakeDeps/BuildConfig.java => src/share/tools/ProjectCreator/BuildConfig.java rename : src/share/tools/MakeDeps/DirectoryTree.java => src/share/tools/ProjectCreator/DirectoryTree.java rename : src/share/tools/MakeDeps/DirectoryTreeNode.java => src/share/tools/ProjectCreator/DirectoryTreeNode.java rename : src/share/tools/MakeDeps/FileFormatException.java => src/share/tools/ProjectCreator/FileFormatException.java rename : src/share/tools/MakeDeps/Macro.java => src/share/tools/ProjectCreator/Macro.java rename : src/share/tools/MakeDeps/MacroDefinitions.java => src/share/tools/ProjectCreator/MacroDefinitions.java rename : src/share/tools/MakeDeps/MakeDeps.java => src/share/tools/ProjectCreator/ProjectCreator.java rename : src/share/tools/MakeDeps/Util.java => src/share/tools/ProjectCreator/Util.java rename : src/share/tools/MakeDeps/WinGammaPlatform.java => src/share/tools/ProjectCreator/WinGammaPlatform.java rename : src/share/tools/MakeDeps/WinGammaPlatformVC6.java => src/share/tools/ProjectCreator/WinGammaPlatformVC6.java rename : src/share/tools/MakeDeps/WinGammaPlatformVC7.java => src/share/tools/ProjectCreator/WinGammaPlatformVC7.java rename : src/share/tools/MakeDeps/WinGammaPlatformVC8.java => src/share/tools/ProjectCreator/WinGammaPlatformVC8.java rename : src/share/tools/MakeDeps/WinGammaPlatformVC9.java => src/share/tools/ProjectCreator/WinGammaPlatformVC9.java
2010-10-236896603: CMS/GCH: collection_attempt_is_safe() ergo should use more recent dataysr
Summary: Deprecated HandlePromotionFailure, removing the ability to turn off that feature, did away with one epoch look-ahead when deciding if a scavenge is likely to fail, relying on current data. Reviewed-by: jmasa, johnc, poonam
2010-09-146984368: Large default heap size does not allow to use zero based compressed ↵kvn
oops Summary: take into account HeapBaseMinAddress and round down MaxPermSize Reviewed-by: never
2010-05-276941466: Oracle rebranding changes for Hotspot repositoriestrims
Summary: Change all the Sun copyrights to Oracle copyright Reviewed-by: ohair
2010-04-136858496: Clear all SoftReferences before an out-of-memory due to GC overhead ↵jmasa
limit. Summary: Ensure a full GC that clears SoftReferences before throwing an out-of-memory Reviewed-by: ysr, jcoomes
2009-10-286887571: Increase default heap config sizesphh
Summary: Apply modification of existing server heap size ergo to all collectors except CMS. Reviewed-by: jmasa, ysr, xlu
2008-08-21Mergetonyp
2008-07-026719955: Update copyright yearjdk7-b30xdono
Summary: Update copyright year for files that have been modified in 2008 Reviewed-by: ohair, tbell
2008-06-056711316: Open source the Garbage-First garbage collectorysr
Summary: First mercurial integration of the code for the Garbage-First garbage collector. Reviewed-by: apetrusenko, iveresov, jmasa, sgoldman, tonyp, ysr
2008-03-026557851: CMS: ergonomics defaults are not set with FLAG_SET_ERGOjmasa
Summary: Default values set by cms ergonomics are set with FLAG_SET_DEFAULT so down stream the values look like the default values and affect how later parameters are set. Set these values with FLAG_SET_ERGO instead and adjust how later parameters are interpreted. Reviewed-by: iveresov, apetrusenko, pbk, ysr --HG-- extra : transplant_source : %17%A8%DF%B6iP%25%20%94%A9%E8%03%80IX%91N%A7C%F1