On 12/01/2011 06:00 AM, David Edelsohn wrote: > On Thu, Dec 1, 2011 at 4:36 AM, Torvald Riegel <trie...@redhat.com> wrote: >> On Wed, 2011-11-30 at 21:41 -0500, David Edelsohn wrote: >>> On Wed, Nov 30, 2011 at 8:05 PM, Richard Henderson <r...@redhat.com> wrote: >>>> This is a tad rough, but not too bad. >>> >>> Cool. >>> >>> Maybe I don't understand what they are suppose to represent, but why >>> the choice of values for cacheline size? Is that suppose to be a >>> value chosen by ITM or suppose to be the hardware cacheline used as >>> the granularity for transactions? >> >> CACHELINE_SIZE is supposed to be a the size of hardware cachelines so >> that we can add proper padding to shared variables to avoid false >> sharing. >> >> It also was used as the granularity of transactional access by some TM >> methods that aren't part of libitm currently, but might be revived in >> the future. > > So where did you get the values used in the PowerPC port of ITM?
I made it up. As he said, it's only used for padding to *attempt to* avoid false sharing. Currently sources won't actually fail with the wrong cacheline value, but they'll work more efficiently with the right value. r~