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

jcstress: Test list should honor concurrency settings

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P4
    • None
    • None
    • tools
    • None

    Description

      ```
      jcstress-20240222. -c 1 -l | wc -l
      4489
      jcstress-20240222.jar -c 2 -l | wc -l
      4489
      jcstress-20240222.jar -c 4 -l | wc -l
      4489
      ```

      Then eg the runtime with `-c 1` may result in following message
      ```
         Scheduling classes for matching tests:
          2 actors:
            No scheduling is possible, these tests would not run.
          3 actors:
            No scheduling is possible, these tests would not run.
          4 actors:
            No scheduling is possible, these tests would not run.

        Test configuration:
          Hardware CPUs in use: 1
          Spinning style: Thread.onSpinWait()
          Test selection: "org.openjdk.jcstress.tests.mxbeans.ThreadMXBeanAlloc|org.openjdk.jcstress.tests.oota.Sevcik_01_Redundant_WAR_Elimination|org.openjdk.jcstress.tests.oota.Sevcik_02_Redundant_RAR_Elimination|org.openjdk.jcstress.tests.oota.Sevcik_03_RoachMotel|org.openjdk.jcstress.tests.oota.Sevcik_04_IrrelevantRead|org.openjdk.jcstress.tests.oota.Sevcik_05_IllegalTransform|org.openjdk.jcstress.tests.sample.SampleTest|org.openjdk.jcstress.tests.singletons.FinalWrapper.Safe|org.openjdk.jcstress.tests.singletons.FinalWrapper.Unsafe|org.openjdk.jcstress.tests.singletons.Holder.Safe|org.openjdk.jcstress.tests.singletons.Holder.Unsafe|org.openjdk.jcstress.tests.singletons.SafeDCL.Safe|org.openjdk.jcstress.tests.singletons.SafeDCL.Unsafe|org.openjdk.jcstress.tests.singletons.SafeLocalDCL.Safe|org.openjdk.jcstress.tests.singletons.SafeLocalDCL.Unsafe|org.openjdk.jcstress.tests.singletons.SynchronizedCL.Safe|org.openjdk.jcstress.tests.singletons.SynchronizedCL.Unsafe|org.openjdk.jcstress.tests.singletons.UnsafeDCL.Safe|org.openjdk.jcstress.tests.singletons.UnsafeDCL.Unsafe|org.openjdk.jcstress.tests.singletons.UnsafeLocalDCL.Safe|org.openjdk.jcstress.tests.singletons.UnsafeLocalDCL.Unsafe|org.openjdk.jcstress.tests.strings.BigDecimalString|org.openjdk.jcstress.tests.strings.BigDecimalStringLen|org.openjdk.jcstress.tests.strings.BigIntegerString|org.openjdk.jcstress.tests.strings.BigIntegerStringLen|org.openjdk.jcstress.tests.strings.StringBufferAppendTest|org.openjdk.jcstress.tests.strings.StringBufferTest|org.openjdk.jcstress.tests.strings.StringBuilderTest|org.openjdk.jcstress.tests.tearing.ArrayInterleaveTest|org.openjdk.jcstress.tests.tearing.UnsafeArrayInterleaveTest|org.openjdk.jcstress.tests.tearing.UnsafeIntTearingTest|org.openjdk.jcstress.tests.tearing.buffers.ByteBufferInterleaveTest|org.openjdk.jcstress.tests.tearing.buffers.CharBufferInterleaveTest|org.openjdk.jcstress.tests.tearing.buffers.DirectByteBufferInterleaveTest|org.openjdk.jcstress.tests.tearing.buffers.DoubleBufferInterleaveTest|org.openjdk.jcstress.tests.tearing.buffers.FloatBufferInterleaveTest|org.openjdk.jcstress.tests.tearing.buffers.IntBufferInterleaveTest|org.openjdk.jcstress.tests.tearing.buffers.LongBufferInterleaveTest|org.openjdk.jcstress.tests.tearing.buffers.ShortBufferInterleaveTest|org.openjdk.jcstress.tests.tearing.fields.sync.BooleanTest|org.openjdk.jcstress.tests.tearing.fields.sync.ByteTest|org.openjdk.jcstress.tests.tearing.fields.sync.CharTest|org.openjdk.jcstress.tests.tearing.fields.sync.DoubleTest|org.openjdk.jcstress.tests.tearing.fields.sync.FloatTest|org.openjdk.jcstress.tests.tearing.fields.sync.IntTest|org.openjdk.jcstress.tests.tearing.fields.sync.LongTest|org.openjdk.jcstress.tests.tearing.fields.sync.ShortTest|org.openjdk.jcstress.tests.tearing.fields.sync.StringTest|org.openjdk.jcstress.tests.tearing.fields.volatiles.BooleanTest|org.openjdk.jcstress.tests.tearing.fields.volatiles.ByteTest|org.openjdk.jcstress.tests.tearing.fields.volatiles.CharTest|org.openjdk.jcstress.tests.tearing.fields.volatiles.DoubleTest|org.openjdk.jcstress.tests.tearing.fields.volatiles.FloatTest|org.openjdk.jcstress.tests.tearing.fields.volatiles.IntTest|org.openjdk.jcstress.tests.tearing.fields.volatiles.LongTest|org.openjdk.jcstress.tests.tearing.fields.volatiles.ShortTest|org.openjdk.jcstress.tests.tearing.fields.volatiles.StringTest|org.openjdk.jcstress.tests.tearing.arrays.large.sync.BooleanTest|org.openjdk.jcstress.tests.tearing.arrays.large.sync.ByteTest|org.openjdk.jcstress.tests.tearing.arrays.large.sync.CharTest|org.openjdk.jcstress.tests.tearing.arrays.large.sync.DoubleTest|org.openjdk.jcstress.tests.tearing.arrays.large.sync.FloatTest|org.openjdk.jcstress.tests.tearing.arrays.large.sync.IntTest|org.openjdk.jcstress.tests.tearing.arrays.large.sync.LongTest|org.openjdk.jcstress.tests.tearing.arrays.large.sync.ShortTest|org.openjdk.jcstress.tests.tearing.arrays.large.sync.StringTest|org.openjdk.jcstress.tests.tearing.arrays.small.sync.BooleanTest|org.openjdk.jcstress.tests.tearing.arrays.small.sync.ByteTest|org.openjdk.jcstress.tests.tearing.arrays.small.sync.CharTest|org.openjdk.jcstress.tests.tearing.arrays.small.sync.DoubleTest|org.openjdk.jcstress.tests.tearing.arrays.small.sync.FloatTest|org.openjdk.jcstress.tests.tearing.arrays.small.sync.IntTest|org.openjdk.jcstress.tests.tearing.arrays.small.sync.LongTest|org.openjdk.jcstress.tests.tearing.arrays.small.sync.ShortTest|org.openjdk.jcstress.tests.tearing.arrays.small.sync.StringTest|org.openjdk.jcstress.tests.threadlocal.ThreadLocalSharing|org.openjdk.jcstress.tests.unsafe.UnsafeAddLong1|org.openjdk.jcstress.tests.unsafe.UnsafeAddLong42|org.openjdk.jcstress.tests.unsafe.UnsafePublication|org.openjdk.jcstress.tests.unsafe.UnsafePutOrderedTwice|org.openjdk.jcstress.tests.unsafe.UnsafeReadTwiceOverVolatileReadTest|org.openjdk.jcstress.tests.varhandles.DekkerRelaxation1Test|org.openjdk.jcstress.tests.varhandles.DekkerRelaxation2Test|org.openjdk.jcstress.tests.varhandles.DekkerTest|org.openjdk.jcstress.tests.volatiles.DekkerTest|org.openjdk.jcstress.tests.volatiles.DoubleVolatileTest|org.openjdk.jcstress.tests.volatiles.LazySetTransitivityTest|org.openjdk.jcstress.tests.volatiles.ObservedVolatileBarrierTest|org.openjdk.jcstress.tests.volatiles.OpaqueIRIWTest|org.openjdk.jcstress.tests.volatiles.PowerSCViolation|org.openjdk.jcstress.tests.volatiles.ReadAfterReadTest|org.openjdk.jcstress.tests.volatiles.ReadAfterVolatileReadTest|org.openjdk.jcstress.tests.volatiles.ReadTwiceOverVolatileReadTest|org.openjdk.jcstress.tests.volatiles.RelaxedIRIWTest|org.openjdk.jcstress.tests.volatiles.ScalarReplacedVolatileBarrierTest|org.openjdk.jcstress.tests.volatiles.UnobservedVolatileBarrierTest|org.openjdk.jcstress.tests.volatiles.VolatileAcquireReleaseTest|org.openjdk.jcstress.tests.volatiles.VolatileIRIWTest|org.openjdk.jcstress.tests.volatiles.VolatileIncrementAtomicityTest"
          Forks per test: 1 normal, 3 stress
          Test stride: 40 strides x 256 tests, but taking no more than 64 Mb
          Test result blob: "jcstress-results-2024-06-09-19-58-08.bin.gz"
          Test results: "results/"

      FATAL: No matching tests.
      ```

      But similar also happens with `-c 2` and `-c3 ` and sometimes with `-c 4`. Have not seen with bigger, but I have only 4 physical cores

      If it is possible, the -l should honour the -c

      Attachments

        Issue Links

          Activity

            People

              jvanek Jiří Vaněk
              jvanek Jiří Vaněk
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: