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 import java.lang.management.ManagementFactory;
25 import java.lang.management.MemoryPoolMXBean;
26 import java.util.Objects;
27 import java.util.Optional;
28 import java.util.regex.Matcher;
29 import java.util.regex.Pattern;
30
31 import com.oracle.java.testlibrary.Asserts;
32 import com.sun.management.ThreadMXBean;
33 import sun.hotspot.WhiteBox;
34 import sun.misc.Unsafe;
35
36 /**
37 * Main class for tests on {@code SurvivorAlignmentInBytes} option.
38 *
39 * Typical usage is to obtain instance using fromArgs method, allocate objects
40 * and verify that actual memory usage in tested heap space is close to
41 * expected.
42 */
43 public class SurvivorAlignmentTestMain {
44 enum HeapSpace {
45 EDEN,
46 SURVIVOR,
47 TENURED
48 }
49
50 public static final WhiteBox WHITE_BOX = WhiteBox.getWhiteBox();
51
52 public static final long MAX_TENURING_THRESHOLD = Optional.ofNullable(
53 SurvivorAlignmentTestMain.WHITE_BOX.getIntxVMFlag(
|
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 import java.lang.management.ManagementFactory;
25 import java.lang.management.MemoryPoolMXBean;
26 import java.util.Objects;
27 import java.util.Optional;
28 import java.util.regex.Matcher;
29 import java.util.regex.Pattern;
30
31 import com.oracle.java.testlibrary.Asserts;
32 import com.sun.management.ThreadMXBean;
33 import jdk.testlib.WhiteBox;
34 import sun.misc.Unsafe;
35
36 /**
37 * Main class for tests on {@code SurvivorAlignmentInBytes} option.
38 *
39 * Typical usage is to obtain instance using fromArgs method, allocate objects
40 * and verify that actual memory usage in tested heap space is close to
41 * expected.
42 */
43 public class SurvivorAlignmentTestMain {
44 enum HeapSpace {
45 EDEN,
46 SURVIVOR,
47 TENURED
48 }
49
50 public static final WhiteBox WHITE_BOX = WhiteBox.getWhiteBox();
51
52 public static final long MAX_TENURING_THRESHOLD = Optional.ofNullable(
53 SurvivorAlignmentTestMain.WHITE_BOX.getIntxVMFlag(
|