When i am running the JMatBench with JIT enabled (VM_ARGS=-Xusejit:true), Test_id=ojalgo_MultTranB_100_20 this testcase is failing. When i do the initial analysis.
When JIT enabled test-case executed very fast compared to JIT disabled. When elapsed time is very less numTrails becomes 2 (My case elapsedtime < goalduration ) as per the logic in jmbench.tools.runtime.RuntimeEvaluationTest.evaluate().
When numTrails=2 below loop is running for 2 iterations, for first run correct result is produced but it was overwritten with second run result which is not the expected result in test assertion.
In jmbench.impl.runtime.OjAlgoAlgorithmFactory.OpMultTransB() method
for (long i = 0; i < numTrials; i++) {
result.fillByMultiplying(matA, matBT);
}
When JIT disabled testcase took more time and elapsedtime < goalduration so this loop is executing one time only, and produced expected value.
In failed case numTrials becomes 2 and passed case numTrials is one.
if elapsedTime < goalDuration as per the calculation numTrials is more than or equal 2.
Can you help me to fix this issue.
These are trace msgs which are added to debug jmbench.impl.runtime.OjAlgoAlgorithmFactory.OpMultTransB()
In OjAlgoAlgorithmFactory.OpMultTransB() WHILE Loop numTrails : 2
NumTrails value : 2 i : 0
Input Values:
6898725549061005648 , 6739791592747404360
Result Values :
-1702889168242773212
NumTrails value : 2 i : 1
Input Values:
6898725549061005648 , 6739791592747404360
Result Values :
6439618958043074220
goal duration : 1000000, elapsed time : 1737600
Test results: 6439618958043074220 Expected Test result : -1702889168242773212
Patch details:
With the same inputs if it called 2 times, result is different for each run. So before going for 2nd run initialize the result object also, then stale data will be cleared and we can expect same result for same inputs. This fix will add initialization cost for every run but functionality wise it won’t break anything.
--
You received this message because you are subscribed to the Google Groups "java-matrix-benchmark-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to java-matrix-benchmark-discuss+unsub...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.