[concurrency-interest] Unsynchronized lazy conditions

Aleksey Shipilev shade at redhat.com
Thu May 31 06:37:57 EDT 2018


On 05/31/2018 12:32 PM, Alex Otenko wrote:
>>> (VH.get cannot be different from volatile load on x86, can it?..)
>> 
>> Of course it can,
> 
> By what means? If VH.get guarantees observing cache-coherent value, how can it do that observing
> faster than volatile load on x86?

Because there is more to the performance story than just observing the values. For example, having
the non-volatile access on fast-path means you can optimize the code around it better. What makes
VarHandles magical is that we can make the decision on what memory semantics we want for each
particular use. (Pretty like the internal-jdk-class-that-must-not-be-named).

-Aleksey

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://cs.oswego.edu/pipermail/concurrency-interest/attachments/20180531/e021354f/attachment.sig>


More information about the Concurrency-interest mailing list