-
Bug
-
Resolution: Fixed
-
P3
-
1.4.0
-
beta2
-
generic
-
generic
Performance regression of 20 - 60% serializing the following objects in merlin builds 45 - 51.
long arrays
getfield/putfield trees
short strings
defaultRead/WriteObject trees
writeReplace/ReadResolve trees
object stream construction
externalizable-object trees
object trees
object arrays
small-object trees
see http://javaweb.eng/engineering/jdk-performance/reports/linux and follow the link for serialization - hotspot client for more details.
To recreate:
% java -version
java version "1.4.0-beta"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-beta-b51)
Java HotSpot(TM) Client VM (build 1.4beta-B51, mixed mode)
% java -cp /java/jdk/ws/performance/MASTER/serialbench.jar bench.serial.Main
02/13/2001 added by Tony Zhang(tony.zhang@eng)
I am getting the same performance regression for Solaris/sparc, but only on
"Object stream construction" serialization benchmark.
% SunOS vispro 5.7 Generic_106541-11 sun4u sparc SUNW,Ultra-30
% jdk1.3/bin/java -version
java version "1.3.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0)
Java HotSpot(TM) Client VM (build 1.3.0, mixed mode)
% jdk1.3/bin/java -ms256m -mx256m -cp /home/zzhang/bugs/rmi-tests bench.serial.Main
# Benchmark Name Time (ms) Score
-----------------------------------------------------------
0 Object stream construction 44921 44921.0
-----------------------------------------------------------
Total score 44921.0
% jdk1.4/bin/java -version
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-beta-b51)
Java HotSpot(TM) Client VM (build 1.4beta-B51, mixed mode)
% jdk1.4/bin/java -ms256m -mx256m -cp /home/zzhang/bugs/rmi-tests bench.serial.Main
# Benchmark Name Time (ms) Score
-----------------------------------------------------------
0 Object stream construction 62469 62469.0
-----------------------------------------------------------
Total score 62469.0
For this run, you would see (62469.0 - 44921.0) / 44921.0 = 39% performance
regression from 1.3 to 1.4. The numbers might differ from run to run and machine
to machine, but at least 30% regression has been observed.
02/26/2001 added by Tony Zhang(tony.zhang@eng)
For b-53, I see performance regression of 25% - 37% from other sub-benchmarks
(besides Object Stream) on Solaris/sparc.
long arrays
getfield/putfield trees
short strings
defaultRead/WriteObject trees
writeReplace/ReadResolve trees
object stream construction
externalizable-object trees
object trees
object arrays
small-object trees
see http://javaweb.eng/engineering/jdk-performance/reports/linux and follow the link for serialization - hotspot client for more details.
To recreate:
% java -version
java version "1.4.0-beta"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-beta-b51)
Java HotSpot(TM) Client VM (build 1.4beta-B51, mixed mode)
% java -cp /java/jdk/ws/performance/MASTER/serialbench.jar bench.serial.Main
02/13/2001 added by Tony Zhang(tony.zhang@eng)
I am getting the same performance regression for Solaris/sparc, but only on
"Object stream construction" serialization benchmark.
% SunOS vispro 5.7 Generic_106541-11 sun4u sparc SUNW,Ultra-30
% jdk1.3/bin/java -version
java version "1.3.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0)
Java HotSpot(TM) Client VM (build 1.3.0, mixed mode)
% jdk1.3/bin/java -ms256m -mx256m -cp /home/zzhang/bugs/rmi-tests bench.serial.Main
# Benchmark Name Time (ms) Score
-----------------------------------------------------------
0 Object stream construction 44921 44921.0
-----------------------------------------------------------
Total score 44921.0
% jdk1.4/bin/java -version
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-beta-b51)
Java HotSpot(TM) Client VM (build 1.4beta-B51, mixed mode)
% jdk1.4/bin/java -ms256m -mx256m -cp /home/zzhang/bugs/rmi-tests bench.serial.Main
# Benchmark Name Time (ms) Score
-----------------------------------------------------------
0 Object stream construction 62469 62469.0
-----------------------------------------------------------
Total score 62469.0
For this run, you would see (62469.0 - 44921.0) / 44921.0 = 39% performance
regression from 1.3 to 1.4. The numbers might differ from run to run and machine
to machine, but at least 30% regression has been observed.
02/26/2001 added by Tony Zhang(tony.zhang@eng)
For b-53, I see performance regression of 25% - 37% from other sub-benchmarks
(besides Object Stream) on Solaris/sparc.