RFR(M): 8017317: PPC64 (part 7): cppInterpreter: implement support for biased locking

Vladimir Kozlov vladimir.kozlov at oracle.com
Tue Jul 2 07:42:12 PDT 2013


It looks like we need to discuss about the move inside hotspot team since not everyone agree. So if we do that we do it 
later.

Goetz, you can push your changes.

Thanks,
Vladimir

On 7/2/13 4:37 AM, David Holmes wrote:
> Sorry I've been in and out of the office this past week.
>
> I think the move should happen - but whether that is easier to do before or after I can't say. I'll leave it to Vladimir
> to make the call.
>
> David
> -----
>
> On 2/07/2013 6:41 PM, Lindenmaier, Goetz wrote:
>> Hi David,
>>
>> can I push this change now?  Or will the files be moved?
>> I prepared  a webrev without the shared change:
>> http://cr.openjdk.java.net/~goetz/webrevs/8017317-lock-2/
>>
>> Best regards,
>>    Goetz.
>>
>>
>> -----Original Message-----
>> From: ppc-aix-port-dev-bounces at openjdk.java.net [mailto:ppc-aix-port-dev-bounces at openjdk.java.net] On Behalf Of
>> Vladimir Kozlov
>> Sent: Freitag, 28. Juni 2013 00:07
>> To: David Holmes
>> Cc: ppc-aix-port-dev at openjdk.java.net; hotspot-dev at openjdk.java.net
>> Subject: Re: RFR(M): 8017317: PPC64 (part 7): cppInterpreter: implement support for biased locking
>>
>> David,
>>
>> Do you insist on moving cppInterpreter files into separate directory? If
>> yes, we need to do that in our main sources to avoid merges nightmare.
>> And I will do the move.
>>
>> Thanks,
>> Vladimir
>>
>> On 6/27/13 5:18 AM, David Holmes wrote:
>>> Vladimir,
>>>
>>> On 27/06/2013 9:34 AM, Vladimir Kozlov wrote:
>>>> Hi Goetz,
>>>>
>>>> On 6/26/13 7:30 AM, Lindenmaier, Goetz wrote:
>>>>> Hi,
>>>>>
>>>>> To use biased locking in our PPC64 VM,we fixed the biased locking
>>>>> implementation
>>>>> in the cppInterpreter.  We also added  BiasedLockingStatistic support.
>>>>
>>>> Oracle does not use cppInterpreter and no building and testing are done.
>>>> So we trust you to do testing of these changes.
>>>> I glanced on these changes and they look fine to me.
>>>>
>>>> One suggestion I heard from David H. is to move cppInterpreter related
>>>> files (all 6 of them) from interpreter/ directory to separate directory.
>>>> So we can see when changes does not affect our shared code.
>>>
>>> It is a general source of confusion to new hotspot engineers that there
>>> are actually two interpreters in one directory and that one is not used
>>> by the historical primary ports. It also isn't obvious that
>>> bytecodeInterpreter.cpp pertains to the cppInterpreter.
>>>
>>>>> We need an additional ordering operation in revoke_bias() when writing
>>>>> the mark.
>>>>
>>>> Why you need ordering only for locked objects in this code? And why here
>>>> at all? This code is executed at safepoint.
>>>
>>> There is one occurrence that is not executed at a safepoint - see
>>> BiasedLocking::Condition BiasedLocking::revoke_and_rebias. Though it
>>> seems to be operating only on current thread in that case.
>>>
>>> The use of release_set_mark seems consistent with other uses in
>>> synchronizer.cpp.
>>>
>>> David
>>> -----
>>>
>>>> thanks,
>>>> Vladimir
>>>>
>>>>> The change enables biased locking for ppc64 per default.
>>>>> http://cr.openjdk.java.net/~goetz/webrevs/8017317-lock/
>>>>>
>>>>> Please review and test this change.
>>>>>
>>>>> Best regards,
>>>>>     Goetz
>>>>>


More information about the ppc-aix-port-dev mailing list