[9] RFR(XXS): 8036091: compiler/membars/DekkerTest.java fails with -XX:CICompilerCount=1
Albert
albert.noll at oracle.com
Tue Mar 4 10:31:29 PST 2014
Thank you, Vladimir.
Best,
Albert
On 03/04/2014 05:39 PM, Vladimir Kozlov wrote:
> Looks good.
>
> Thanks,
> Vladimir
>
> On 3/3/14 11:29 PM, Albert wrote:
>> Hi Vladimir,
>>
>> thanks for your review. I did your proposed changes.
>>
>> Here is the new webrev:
>> http://cr.openjdk.java.net/~anoll/8036091/webrev.01/
>>
>> Best,
>> Albert
>>
>> On 03/03/2014 09:31 PM, Vladimir Kozlov wrote:
>>> Albert,
>>>
>>> You need to add -XX:-TieredCompilation to test's commands. I forgot it
>>> when I added the test. Removing -XX:CICompilerCount=1 is wrong because
>>> sequence of C2 compilations will affect the reproduction of the
>>> problem. CICompilerCount=1 serializes compilations and makes
>>> compilation sequence more deterministic. Even with -Xbatch tests which
>>> execute several threads the compilation is not deterministic because
>>> compilation requests from different java threads will be served by
>>> different compiler threads.
>>>
>>> CICompilerCount, by definition and by the code we used in Tiered, is
>>> total number of compilers threads, C1+C2. You can't interpret it
>>> differently for =1 case.
>>>
>>> Albert, make sure to allow CICompilerCount=1 with Tiered compilation
>>> when only C1 is used (TieredStopAtLevel < 4).
>>>
>>> Thanks,
>>> Vladimir
>>>
>>> On 3/3/14 4:49 AM, Aleksey Shipilev wrote:
>>>> Thanks Albert!
>>>>
>>>> -Aleksey.
>>>>
>>>> P.S. Serves me right for not paying attention to the original issue
>>>> thinking it only covers the negative values.
>>>>
>>>> On 03/03/2014 04:47 PM, Albert wrote:
>>>>> Hi Aleksey,
>>>>>
>>>>> Vladimir K. reviewed JDK-8034775, let's see what he thinks. If we
>>>>> decide
>>>>> to go for the clean
>>>>> solution, I could make it work.
>>>>>
>>>>> Best,
>>>>> Albert
>>>>>
>>>>> On 03/03/2014 01:42 PM, Aleksey Shipilev wrote:
>>>>>> On 03/03/2014 04:25 PM, Albert wrote:
>>>>>>> For me the only clean solution that *enforces* and *retains* the
>>>>>>> meaning of the flag is to enable a compiler thread to grab tasks
>>>>>>> from
>>>>>>> both queues (or have a shared queue). Maybe someone can tell why it
>>>>>>> is implemented as it is?
>>>>>> I agree, this seems to be only good solution for
>>>>>> not-that-familiar-with-HS-tiered-arch guy like me.
>>>>>>
>>>>>> -Aleksey.
>>>>>
>>>>
>>
More information about the hotspot-compiler-dev
mailing list