Path: ...!weretis.net!feeder8.news.weretis.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: "Chris M. Thomasson" Newsgroups: comp.arch Subject: Re: arm ldxr/stxr vs cas Date: Wed, 4 Sep 2024 16:48:48 -0700 Organization: A noiseless patient Spider Lines: 28 Message-ID: References: <07d60bd0a63b903820013ae60792fb7a@www.novabbs.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Thu, 05 Sep 2024 01:48:49 +0200 (CEST) Injection-Info: dont-email.me; posting-host="22bbe074495a5ed8376623fc400f655d"; logging-data="36532"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/pfQnHFxDjkGIuq1DZaA3NJfOa5uZY9d4=" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:hBW5WZq7WQTdA3cRVnRoxTet6cM= In-Reply-To: <07d60bd0a63b903820013ae60792fb7a@www.novabbs.org> Content-Language: en-US Bytes: 2225 On 9/4/2024 2:27 PM, MitchAlsup1 wrote: > On Mon, 2 Sep 2024 17:27:57 +0000, jseigh wrote: > >> I read that arm added the cas instruction because they didn't think >> ldxr/stxr would scale well.  It wasn't clear to me as to why that >> would be the case.  I would think the memory lock mechanism would >> have really low overhead vs cas having to do an interlocked load >> and store.  Unless maybe the memory lock size might be large >> enough to cause false sharing issues.  Any ideas? > > A pipeline lock between the LD part of a CAS and the ST part of a > CAS is essentially FREE. But the same is true for LL followed by > a later SC. 100% sure on that? No way to break the reservation from an unrelated aspect wrt LL/SC? > > Older machines with looser than sequential consistency memory models > and running OoO have a myriad of problems with LL - SC. This is > why My 66000 architecture switches from causal consistency to > sequential consistency when it encounters LL and > switches bac after seeing SC. > > No Fences necessary with causal consistency. > >> Joe Seigh