Вот в этой статье https://habr.com/ru/articles/195948/ достаточно подробно разжевывается, каким способом реализуются основополагающие CAS-операции на примере команд процессоров x86/64 и ARM. Можно ли похожим образом указать в какой ассемблерный код транслируются операции упорядочивания памяти Sequential Consistency, Release/Acquire на примере тех же популярных архитектур процессоров?
Почти всегда нам достаточно дефолтного SeqCst
В литературе по многопоточному программированию тоже пишут, что SeqCst заставит код безопасно работать так, как мы себе его представляем. Но видимо реальность такова, что последующие главы в книгах посвящены способам оптимизации производительности с подходящим указанием семантики упорядочивания памяти)
Я впечатлен Вашим трудом, так как работа с отечественными процессорами это действительно сакральные знания. Надо не мало сил, чтобы получить такой положительный результат.
Вот в этой статье https://habr.com/ru/articles/195948/ достаточно подробно разжевывается, каким способом реализуются основополагающие CAS-операции на примере команд процессоров x86/64 и ARM. Можно ли похожим образом указать в какой ассемблерный код транслируются операции упорядочивания памяти Sequential Consistency, Release/Acquire на примере тех же популярных архитектур процессоров?
В литературе по многопоточному программированию тоже пишут, что SeqCst заставит код безопасно работать так, как мы себе его представляем. Но видимо реальность такова, что последующие главы в книгах посвящены способам оптимизации производительности с подходящим указанием семантики упорядочивания памяти)