[11] RTM tests fail

Christian Thalinger cthalinger at twitter.com
Mon Jun 25 12:16:31 UTC 2018


Hi!  Is anyone running the compiler/rtm/ tests on a machine that actually supports RTM?

Every time one of our nightly jobs ends up on a machine that supports RTM a bunch of locking tests and the print test fail:

	• compiler/rtm/locking/TestRTMAbortRatio.java.TestRTMAbortRatio
	• compiler/rtm/locking/TestRTMAbortThreshold.java.TestRTMAbortThreshold
	• compiler/rtm/locking/TestRTMAfterNonRTMDeopt.java.TestRTMAfterNonRTMDeopt
	• compiler/rtm/locking/TestRTMDeoptOnHighAbortRatio.java.TestRTMDeoptOnHighAbortRatio
	• compiler/rtm/locking/TestRTMDeoptOnLowAbortRatio.java.TestRTMDeoptOnLowAbortRatio
	• compiler/rtm/locking/TestRTMLockingThreshold.java.TestRTMLockingThreshold
	• compiler/rtm/locking/TestUseRTMXendForLockBusy.java.TestUseRTMXendForLockBusy
	• compiler/rtm/print/TestPrintPreciseRTMLockingStatistics.java.TestPrintPreciseRTMLockingStatistics

Exceptions look like this (for all the failures above in order):

java.lang.RuntimeException: Actual abort ratio (10000) should lower or equal to specified (100).: expected that 10000 <= 100

java.lang.RuntimeException: Expected that method with rtm lock elision was deoptimized after 1 lock attempts: expected 3320 to equal 1

java.lang.RuntimeException: Two uncommon traps with reason rtm_state_change should be fired.: expected 0 to equal 2

java.lang.RuntimeException: Expected to get only one deoptimization due to rtm state change: expected 0 to equal 1

java.lang.RuntimeException: Expected to get only one deoptimization due to rtm state change: expected 0 to equal 1

java.lang.RuntimeException: There should be exactly one statistics entry corresponding to ProfileRTM state.: expected null to not equal null

java.lang.RuntimeException: VM output should contain exactly one rtm locking statistics entry for method compiler.testlibrary.rtm.BusyLock::test: expected 0 to equal 1

java.lang.RuntimeException: RTM locking statistics should contain non zero aborts count for abort reason 0: expected 0 > 0

Since these tests are not excluded I have to assume that either (a) they work for you (really?) or (b) that Oracle (or someone else) doesn’t have machines that support RTM.


More information about the hotspot-compiler-dev mailing list