Path: ...!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: jseigh Newsgroups: comp.arch Subject: arm ldxr/stxr vs cas Date: Mon, 2 Sep 2024 13:27:57 -0400 Organization: A noiseless patient Spider Lines: 8 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Mon, 02 Sep 2024 19:27:57 +0200 (CEST) Injection-Info: dont-email.me; posting-host="6b91f5c0c7726d675d6b59e4c2010f3a"; logging-data="3087810"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/rGA1DiU8V+JQGLoOMZaEa" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:lpe4J7JH3U8yXSTobSR0xxzP1NU= Content-Language: en-US Bytes: 1256 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? Joe Seigh