Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8325498

Make TrimNativeHeapInterval a product switch

XMLWordPrintable

    • behavioral
    • low
    • Hide
      By removing the "experimental" moniker, we may see broader use of this feature, which may uncover hitherto hidden bugs in either our implementation or in that of the glibc below us.
      However, broader use is the point: this is a useful feature, and reducing Java memory footprint works in our favor. The code is well-tested and has undergone a lengthy review (by Shipilev, among others).
      Show
      By removing the "experimental" moniker, we may see broader use of this feature, which may uncover hitherto hidden bugs in either our implementation or in that of the glibc below us. However, broader use is the point: this is a useful feature, and reducing Java memory footprint works in our favor. The code is well-tested and has undergone a lengthy review (by Shipilev, among others).
    • add/remove/modify command line option
    • JDK

      Summary

      Make TrimNativeHeapInterval a product switch

      Problem

      JDK-8293114 introduced automatic C-heap trimming, for now supported only by the glibc. It is controlled by the command line switch TrimNativeHeapInterval. The feature has proven to be very valuable to customers, and all issues have been ironed out. Therefore, I propose to make this switch a non-experimental product switch.

      Solution

      The solution is to remove the EXPERIMENTAL moniker from this switch.

      In addition to that, the java man page will be changed to mention this option as well as its limitation to Linux glibc-based systems.

      In addition to that, a release note will be written.

      Specification

      --- a/src/hotspot/share/runtime/globals.hpp
      +++ b/src/hotspot/share/runtime/globals.hpp
      @@ -1996,7 +1996,7 @@ const int ObjectAlignmentInBytes = 8;
                 "2: monitors & new lightweight locking (LM_LIGHTWEIGHT)")         \
                 range(0, 2)                                                       \
                                                                                   \
      -  product(uint, TrimNativeHeapInterval, 0, EXPERIMENTAL,                    \
      +  product(uint, TrimNativeHeapInterval, 0,                                  \
                 "Interval, in ms, at which the JVM will trim the native heap if " \
                 "the platform supports that. Lower values will reclaim memory "   \
                 "more eagerly at the cost of higher overhead. A value of 0 "      \

            stuefe Thomas Stuefe
            stuefe Thomas Stuefe
            Christoph Langer, David Holmes
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: