Re: Is Alpha non-other-multicopy atomic?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 16/3/25 12:37, Akira Yokosawa wrote:
> As is well known, Alpha is infamous of its lack of address-dependency
> guarantees.  I don't see much point in discussing whether it is multicopy
> atomic or not.

I agree this is not particularly important, I just found contradicting
information and wanted to clarify/fix Table 15.5.

> If you have access to an Alpha machine with 3 or more CPUs,
> you should be able to run this test with the help of klitmus7.

Thanks for the test. Sadly, I don't have access to an Alpha CPU (I was
born after DEC was bought by Compaq)

> Finally, my mental model of other-multi-copy might be different from
> those defined in papers you cited below. 

Might be, I have just realized mine is wrong. I have just run Listing 
15.16 (C-WRC...) in herd using the "linux" model to realize the exists
clause can trigger. 

Note that it can do so while "RFE" imposes order for the "linux" model 
(it is part of happens-before), so my original comment stating 

  non-mca == rfe does not impose order 

is wrong if Read[X = 0] (fr) -> Write[X = 1] does not mean that the read
is ordered before the write. However, this doesn't seem to be the case
for Alpha [3]

  Section 5.6.1.2: The ordering relation Before (<=) is acyclic
  Section 5.6.1.4: If u and v are overlapping read/write accesses, at
    least one of which is a write, then u and v must be comparable in 
    the BEFORE (<=) ordering, that is, either u <= v or v <= u.

It's still my opinion that Alpha is other-multi-copy atomic but I
understand it is a bit pointless to discuss about this... Sorry, I
couldn't resist.

Thanks

[3] https://download.majix.org/dec/alpha_arch_ref.pdf






[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux