JDK-4872786 : Various regressions in Jetstream benchmark
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.lang
  • Affected Version: 5.0
  • Priority: P2
  • Status: Closed
  • Resolution: Duplicate
  • OS: solaris_8
  • CPU: x86
  • Submitted: 2003-06-02
  • Updated: 2013-11-01
  • Resolved: 2003-06-02
Related Reports
Duplicate :  
Description
There are several regressions in the jetstream benchmark.  The results can be viewed with the following link:

http://brana.sfbay:8080/query/nes.jsp?base=10732,10733,10734,10735,10736,10737,10738,10767,11646,11650,11678&build=11349,11350,11351,11352,11353,11354,11355,11356,11644,11645,11675&pval=0.01

Looking at xprof output, there seems to be more spent in compiled methods involed in the io and lang classes.  Here are some xprof outputs that show this.

Solaris Sparc Client b06
 13.1%    94  +     0    java.io.BufferedReader.read
 12.0%    86  +     0    java.io.BufferedInputStream.read
 10.8%    77  +     0    java.io.BufferedOutputStream.write
  7.3%    52  +     0    java.io.StreamTokenizer.nextToken
  5.5%    39  +     0    java.lang.StringBuffer.append
  3.5%    25  +     0    sun.nio.cs.US_ASCII$Encoder.encodeArrayLoop
  3.4%    24  +     0    sun.nio.cs.US_ASCII$Decoder.decodeArrayLoop
  3.2%    21  +     2    java.lang.String.<init>
  3.1%    22  +     0    java.lang.Integer.getChars
  2.8%    20  +     0    java.lang.StringBuffer.toString
  2.7%    19  +     0    java.io.BufferedReader.readLine
  2.5%    18  +     0    WriteTextTest.writeFile3
  1.8%    13  +     0    java.lang.StringBuffer.append
  1.8%    13  +     0    java.io.StreamTokenizer.read
  1.7%    12  +     0    java.io.BufferedWriter.write
  1.5%    11  +     0    java.nio.Buffer.limit
  1.5%    11  +     0    java.lang.Integer.toString
  1.4%    10  +     0    java.lang.String.getChars
  1.4%     9  +     1    java.nio.CharBuffer.wrap
  1.1%     8  +     0    java.lang.Integer.appendTo
  1.1%     8  +     0    WriteTextTest.writeFile2
  1.0%     7  +     0    sun.nio.cs.StreamEncoder.write
  1.0%     7  +     0    java.nio.Buffer.<init>
  0.8%     6  +     0    CopyFileTest.copyFilesInDir
  0.8%     6  +     0    java.io.PrintWriter.write
 93.6%   666  +     3    Total compiled (including elided)

Solaris Sparc Client b07
14.0%    98  +     0    java.io.BufferedReader.read
 13.4%    94  +     0    java.io.BufferedOutputStream.write
  9.3%    65  +     0    java.io.BufferedInputStream.read
  6.8%    48  +     0    java.io.StreamTokenizer.nextToken
  5.0%    35  +     0    java.lang.String.<init>
  4.7%    33  +     0    sun.nio.cs.US_ASCII$Decoder.decodeArrayLoop
  3.7%    26  +     0    java.lang.StringBuffer.append
  3.3%    23  +     0    sun.nio.cs.US_ASCII$Encoder.encodeArrayLoop
  3.3%    23  +     0    java.lang.String.getChars
  3.1%    22  +     0    WriteTextTest.writeFile3
  2.8%    20  +     0    java.nio.CharBuffer.wrap
  2.8%    20  +     0    java.lang.Integer.getChars
  2.3%    16  +     0    java.io.BufferedReader.readLine
  2.1%    15  +     0    java.lang.Integer.toString
  1.6%    11  +     0    java.lang.StringBuffer.toString
  1.6%    11  +     0    java.lang.StringBuffer.append
  1.6%    11  +     0    java.io.BufferedWriter.write
  1.4%    10  +     0    CopyFileTest.copyFilesInDir
  1.4%    10  +     0    java.io.PrintWriter.write
  1.3%     9  +     0    java.io.StreamTokenizer.read
  1.1%     8  +     0    java.nio.Buffer.<init>
  1.1%     8  +     0    java.lang.Integer.appendTo
  1.0%     7  +     0    java.nio.charset.CharsetEncoder.encode
  0.9%     6  +     0    sun.nio.cs.StreamEncoder$CharsetSE.implWrite
  0.6%     4  +     0    sun.nio.cs.StreamEncoder.write
 94.6%   664  +     0    Total compiled (including elided)


Solaris i586 Server b06
 16.3%    59  +     0    CopyFileTest.copyFilesInDir
 14.9%    54  +     0    WriteTextTest.writeFile3
 13.5%    49  +     0    java.io.StreamTokenizer.nextToken
  8.3%    30  +     0    java.lang.String.valueOf
  3.6%    13  +     0    java.nio.charset.CharsetEncoder.encode
  3.6%    13  +     0    java.io.OutputStreamWriter.write
  1.9%     7  +     0    java.lang.StringBuffer.append
  1.9%     7  +     0    java.lang.String.<init>
  1.7%     5  +     1    java.lang.Integer.appendTo
  1.4%     5  +     0    java.io.OutputStreamWriter.write
  1.1%     4  +     0    sun.nio.cs.US_ASCII$Decoder.decodeArrayLoop
  0.6%     2  +     0    java.lang.Integer.getChars
  0.6%     2  +     0    ParseTextTest.runTest
  0.6%     2  +     0    java.nio.Buffer.<init>
  0.6%     2  +     0    java.io.BufferedReader.readLine
  0.6%     2  +     0    java.lang.String.copyValueOf
  0.3%     1  +     0    ReadTextTest.runTest
  0.3%     0  +     1    java.nio.charset.CharsetDecoder.decode
  0.3%     1  +     0    WriteTextTest.writeFile1
  0.3%     1  +     0    WriteTextTest.writeFile2
  0.3%     1  +     0    java.io.BufferedWriter.write
  0.3%     1  +     0    java.io.PrintWriter.newLine
  0.3%     1  +     0    java.io.BufferedOutputStream.write
 72.7%   262  +     2    Total compiled

* note that java.lang.Integer.toString does not show up in b06
Solaris i586 Server b07
 16.0%    58  +     0    WriteTextTest.writeFile3
 14.4%    52  +     0    CopyFileTest.copyFilesInDir
 13.8%    50  +     0    java.io.StreamTokenizer.nextToken
*  7.5%    27  +     0    java.lang.Integer.toString
  2.8%    10  +     0    java.nio.charset.CharsetEncoder.encode
  2.5%     9  +     0    java.io.OutputStreamWriter.write
  2.2%     8  +     0    java.io.StreamTokenizer.read
  2.2%     8  +     0    java.io.OutputStreamWriter.write
  1.9%     7  +     0    java.io.BufferedWriter.write
  1.9%     7  +     0    sun.nio.cs.US_ASCII$Decoder.decodeArrayLoop
  1.9%     7  +     0    java.lang.String.<init>
  1.9%     7  +     0    java.lang.StringBuffer.append
  1.4%     4  +     1    java.lang.Integer.appendTo
  1.4%     5  +     0    WriteTextTest.writeFile2
  0.6%     2  +     0    java.lang.Integer.getChars
  0.6%     2  +     0    java.io.BufferedInputStream.read
  0.6%     2  +     0    ReadTextTest.runTest
  0.6%     2  +     0    java.io.BufferedReader.readLine
  0.3%     1  +     0    adapters
  0.3%     1  +     0    vtable chunks
  0.3%     1  +     0    java.lang.String.copyValueOf
  0.3%     0  +     1    java.io.BufferedOutputStream.flushBuffer
 75.1%   270  +     2    Total compiled

Linux i586 Client b06
 13.0%    26  +    35    java.lang.StringBuffer.append
  9.1%    26  +    17    java.lang.String.<init>
  7.4%    18  +    17    java.lang.StringBuffer.toString
  6.6%    11  +    20    java.lang.String.getChars
  5.1%    24  +     0    java.io.StreamTokenizer.nextToken
  3.8%    16  +     2    WriteTextTest.writeFile3
  3.8%    15  +     3    java.lang.Integer.toString
  3.8%    18  +     0    sun.nio.cs.ISO_8859_1$Decoder.decodeArrayLoop
  3.8%    18  +     0    sun.nio.cs.ISO_8859_1$Encoder.encodeArrayLoop
  3.0%    14  +     0    java.io.BufferedOutputStream.write
  3.0%    14  +     0    java.io.BufferedReader.read
  2.8%    13  +     0    java.io.BufferedInputStream.read
  2.8%     6  +     7    java.lang.StringBuffer.append
  2.8%    13  +     0    java.lang.Integer.getChars
  2.6%    12  +     0    java.io.OutputStreamWriter.write
  2.3%     5  +     6    java.nio.CharBuffer.wrap
  2.3%    10  +     1    java.io.BufferedReader.readLine
  1.9%     9  +     0    java.nio.Buffer.limit
  1.9%     8  +     1    java.lang.Integer.appendTo
  1.5%     7  +     0    java.io.StreamTokenizer.read
  1.3%     6  +     0    java.io.BufferedWriter.write
  1.1%     5  +     0    java.nio.charset.CharsetEncoder.encode
  0.9%     4  +     0    sun.nio.cs.StreamEncoder.write
  0.6%     3  +     0    WriteTextTest.writeFile2
  0.6%     3  +     0    CopyFileTest.copyFilesInDir
 90.0%   314  +   109    Total compiled (including elided)

Linux i586 Client b07
 16.2%    42  +    34    java.lang.String.<init>
 13.6%    14  +    50    java.lang.String.getChars
  6.4%    29  +     1    java.lang.StringBuffer.append
  6.2%    29  +     0    sun.nio.cs.ISO_8859_1$Encoder.encodeArrayLoop
  4.1%    19  +     0    java.io.StreamTokenizer.nextToken
  3.4%    16  +     0    sun.nio.cs.ISO_8859_1$Decoder.decodeArrayLoop
  3.2%    13  +     2    java.lang.Integer.toString
  3.0%    14  +     0    java.nio.CharBuffer.wrap
  3.0%     4  +    10    java.lang.StringBuffer.append
  3.0%    14  +     0    java.io.BufferedInputStream.read
  2.6%    12  +     0    java.lang.Integer.getChars
  2.3%     7  +     4    java.lang.Integer.appendTo
  2.1%    10  +     0    java.io.BufferedReader.read
  2.1%     9  +     1    WriteTextTest.writeFile3
  1.9%     9  +     0    java.io.BufferedReader.readLine
  1.7%     8  +     0    java.io.BufferedOutputStream.write
  1.7%     8  +     0    WriteTextTest.writeFile2
  1.5%     7  +     0    java.nio.charset.CharsetEncoder.encode
  1.1%     5  +     0    java.io.StreamTokenizer.read
  1.1%     5  +     0    java.nio.Buffer.position
  1.1%     5  +     0    sun.nio.cs.StreamEncoder.write
  1.1%     5  +     0    java.lang.Integer.toString
  1.1%     4  +     1    java.io.BufferedWriter.write
  0.9%     4  +     0    java.io.OutputStreamWriter.write
  0.9%     4  +     0    java.nio.Buffer.limit
 90.2%   319  +   104    Total compiled (including elided)