Uploaded image for project: 'Code Tools'
  1. Code Tools
  2. CODETOOLS-7902598

jcstress should use buffered input/output streams

    Details

    • Type: Enhancement
    • Status: Closed
    • Priority: P4
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: tools
    • Labels:
      None

      Description

      On one of the slower machines this takes significant time:

      "main" #1 prio=5 os_prio=0 cpu=1703.13ms elapsed=2898.78s tid=0x000001cfe0126000 nid=0x1dbc runnable
       [0x00000041b98fe000]
         java.lang.Thread.State: RUNNABLE
      at java.io.FileInputStream.readBytes(java.base@11.0.6/Native Method)
      at java.io.FileInputStream.read(java.base@11.0.6/FileInputStream.java:279)
      at java.io.FilterInputStream.read(java.base@11.0.6/FilterInputStream.java:133)
      at java.io.PushbackInputStream.read(java.base@11.0.6/PushbackInputStream.java:183)
      at java.util.zip.InflaterInputStream.fill(java.base@11.0.6/InflaterInputStream.java:243)
      at java.util.zip.InflaterInputStream.read(java.base@11.0.6/InflaterInputStream.java:159)
      at java.util.zip.ZipInputStream.read(java.base@11.0.6/ZipInputStream.java:195)
      at java.util.jar.JarInputStream.read(java.base@11.0.6/JarInputStream.java:207)
      at java.util.zip.ZipInputStream.closeEntry(java.base@11.0.6/ZipInputStream.java:141)
      at java.util.zip.ZipInputStream.getNextEntry(java.base@11.0.6/ZipInputStream.java:119)
      at java.util.jar.JarInputStream.getNextEntry(java.base@11.0.6/JarInputStream.java:142)
      at java.util.jar.JarInputStream.getNextJarEntry(java.base@11.0.6/JarInputStream.java:179)
      at org.openjdk.jcstress.util.Reflections.enumerateJAR(Reflections.java:132)
      at org.openjdk.jcstress.util.Reflections.enumerate(Reflections.java:100)
      at org.openjdk.jcstress.util.Reflections.enumerate(Reflections.java:93)
      at org.openjdk.jcstress.util.Reflections.ensureResourceInited(Reflections.java:49)
      at org.openjdk.jcstress.util.Reflections.getClassNames(Reflections.java:77)
      at org.openjdk.jcstress.vm.WhiteBoxSupport.getJCStressMethods(WhiteBoxSupport.java:131)
      at org.openjdk.jcstress.vm.WhiteBoxSupport.tryDeopt(WhiteBoxSupport.java:113)
      at org.openjdk.jcstress.infra.runners.Runner.run(Runner.java:84)
      at org.openjdk.jcstress.EmbeddedExecutor.lambda$task$0(EmbeddedExecutor.java:81)
      at org.openjdk.jcstress.EmbeddedExecutor$$Lambda$6/0x0000000800062c40.run(Unknown Source)
      at org.openjdk.jcstress.EmbeddedExecutor.run(EmbeddedExecutor.java:72)
      at org.openjdk.jcstress.ForkedMain.main(ForkedMain.java:58)

      We should really try and use buffered I/O streams.

        Attachments

          Activity

            People

            • Assignee:
              shade Aleksey Shipilev
              Reporter:
              shade Aleksey Shipilev
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: