Есть ли снижение производительности при использовании Memory_order_relaxed?C++

Программы на C++. Форум разработчиков
Anonymous
Есть ли снижение производительности при использовании Memory_order_relaxed?

Сообщение Anonymous »

В типичных системах x86 и ARM существует ли какое-либо снижение производительности при создании переменной std::atomic и выполнении только операций std::memory_order_relaxed? (По сравнению с обычным значением и выполнением неатомарных операций.)
Я осознаю, что более строгие гарантии порядка в памяти могут привести к снижению производительности; Мне особенно интересно, налагает ли std::memory_order_relaxed какие-либо штрафы.
Кроме того, предположим, что операции выполняются над объектами, которые удовлетворяют std::is_always_lock_free. В противном случае наверняка будет штраф из-за обязательного мьютекса.

Подробнее здесь: https://stackoverflow.com/questions/791 ... er-relaxed

Вернуться в «C++»