Deutsch English Français Italiano |
<vhb2gs$73fe$2@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!eternal-september.org!feeder2.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> Newsgroups: comp.arch Subject: Re: Memory ordering Date: Sat, 16 Nov 2024 13:23:41 -0800 Organization: A noiseless patient Spider Lines: 46 Message-ID: <vhb2gs$73fe$2@dont-email.me> References: <vfono1$14l9r$1@dont-email.me> <vgm4vj$3d2as$1@dont-email.me> <vgm5cb$3d2as$3@dont-email.me> <YfxXO.384093$EEm7.56154@fx16.iad> <vh4530$2mar5$1@dont-email.me> <-rKdnTO4LdoWXKj6nZ2dnZfqnPWdnZ2d@supernews.com> <vh5t5b$312cl$2@dont-email.me> <5yqdnU9eL_Y_GKv6nZ2dnZfqn_GdnZ2d@supernews.com> <2024Nov15.082512@mips.complang.tuwien.ac.at> <vh7ak1$3cm56$1@dont-email.me> <20241115152459.00004c86@yahoo.com> <vh8bn7$3j6ql$1@dont-email.me> <vhb2dc$73fe$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Sat, 16 Nov 2024 22:23:41 +0100 (CET) Injection-Info: dont-email.me; posting-host="8e241623a6ac10b7af6ad02cdae1d543"; logging-data="232942"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/5RX8qYO8q051TrSLLitahvfGn867j4r4=" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:wy59HV5qISbdbYZUwcXqe+3jOrQ= Content-Language: en-US In-Reply-To: <vhb2dc$73fe$1@dont-email.me> Bytes: 3445 On 11/16/2024 1:21 PM, Chris M. Thomasson wrote: > On 11/15/2024 12:42 PM, Chris M. Thomasson wrote: >> On 11/15/2024 5:24 AM, Michael S wrote: >>> On Fri, 15 Nov 2024 03:17:22 -0800 >>> "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> wrote: >>> >>>> On 11/14/2024 11:25 PM, Anton Ertl wrote: >>>>> aph@littlepinkcloud.invalid writes: >>>>>> Yes. That Alpha behaviour was a historic error. No one wants to do >>>>>> that again. >>>>> >>>>> Was it an actual behaviour of any Alpha for public sale, or was it >>>>> just the Alpha specification? I certainly think that Alpha's lack >>>>> of guarantees in memory ordering is a bad idea, and so is ARM's: >>>>> "It's only 32 pages" <YfxXO.384093$EEm7.56154@fx16.iad>. Seriously? >>>>> Sequential consistency can be specified in one sentence: "The result >>>>> of any execution is the same as if the operations of all the >>>>> processors were executed in some sequential order, and the >>>>> operations of each individual processor appear in this sequence in >>>>> the order specified by its program." >>>> [...] >>>> >>>> >>>> Well, iirc, the Alpha is the only system that requires an explicit >>>> membar for a RCU based algorithm. Even SPARC in RMO mode does not >>>> need this. Iirc, akin to memory_order_consume in C++: >>>> >>>> https://en.cppreference.com/w/cpp/atomic/memory_order >>>> >>>> data dependent loads >>>> >>> >>> You response does not answer Anton's question. >>> >> >> I guess not. Shit happens. ;^o > > Fwiw, in C++ std::memory_order_consume is useful for traversing a node > based stack of something in RCU. In most systems it only acts like a > compiler barrier. On the Alpha, it must emit a membar instruction. Iirc, > mb for alpha? Cannot remember that one right now. I think, iirc, there is a way to use an acquire membar on the loading of the initial node of a collection to iterate it without using memory_order_consume for every node. I might be wrong on that. It's been a while!