Libatomic 16B
Xi Ruoyao
xry111@mengyan1223.wang
Fri Feb 25 14:16:28 GMT 2022
On Fri, 2022-02-25 at 17:10 +0300, Alexander Monakov via Gcc-help wrote:
> > > https://cdrdv2.intel.com/v1/dl/getContent/671294
TL;DR: Intel says on their CPUs with AVX, 128-bit loads (with movdqa)
are atomic, see page 393 of this doc. And this is updated in Dec 2021,
so you may need to re-download the Intel SDM to get a latest copy.
> > > Create an issue in bugzilla then?
> >
> > Yes please. I should have read the whole thread first. 8-)
> >
> > The AMD manual doesn't say this yet, so any optimization needs to be
> > restricted to Intel CPUs for now. I'll reach out to AMD to get
> > clarification.
>
> This StackOverflow question has evidence that both Intel (Core Duo)
> and
> AMD (Opteron 2435) can tear 128-bit loads.
Core Duo does not have AVX, and AMD has not make any guarantee for the
atomicity of 128-bit load. So we can't use movdqa for 128-bit atomics
on those old Intel and (old or new) AMD models.
> So neither manufacturer can
> give a retroactive guarantee.
>
> https://stackoverflow.com/questions/7646018/sse-instructions-which-cpus-can-do-atomic-16b-memory-operations
>
> Alexander
--
Xi Ruoyao <xry111@mengyan1223.wang>
School of Aerospace Science and Technology, Xidian University
More information about the Gcc-help
mailing list