RFR (S): JEP-142: Reduce Cache Contention on Specified Fields
Remi Forax
forax at univ-mlv.fr
Tue Nov 27 01:17:37 PST 2012
On 11/27/2012 01:20 AM, Doug Lea wrote:
> On 11/26/12 14:08, Doug Lea wrote:
>
>>>
>>>> I think you should re-write the javadoc ...
>>
>> The Contended.java file and its javadoc in Aleksey's webrev is just a
>> placeholder to get things moving. We expect to solicit
>> reviews in the usual way (mainly on concurrency-interest list)
>> for a version that will make it into JDK8.
Ok, cool.
Could you add that @Contented doesn't imply volatile and that the space
overhead can be really big ?
cheers,
Rémi
>
> The initial javadoc is pasted below;
> updates will appear in jsr166 CVS viewable at:
> http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/src/main/java/util/concurrent/Contended.java?view=log
>
>
> /**
> * An annotation expressing that objects and/or their fields are
> * expected to encounter memory contention, generally in the form of
> * "false sharing". This annotation serves as a hint that such objects
> * and fields should reside in locations isolated from those of other
> * objects or fields. The effects of this annotation will nearly
> * always add space overhead to programs. Its use is warranted only
> * when the performance impact of this time/space tradeoff is
> * intrinsically worthwhile; for example, in concurrent contexts in
> * which each instance of the annotated object is often accessed by a
> * different thread.
> *
> * <p>A {@code @Contended} field annotation may optionally include a
> * contention group tag. All fields with the same tag are considered
> * as a group with respect to isolation from other groups. A default
> * annotation without a tag indicates contention with all other
> * fields, including other {@code @Contended} ones.
>
> * <p>When the annotation is used at the class level, all unannotated
> * fields of the object are considered to be in the same default
> * group, separate from any fields that carry their own (possibly
> * tagged) {@code @Contended} annotations.
> *
> * <p><b>Sample Usages</b>. (Forthcoming.)
> *
> * @since 1.8
> */
More information about the hotspot-dev
mailing list