Приветствую.
Про определение о требовании выравнивания читал конечно. Но таки как выбирается аргумент??? чтобы получить кучи прироста производительности )
Т.е. я например объявляю объекты как
alignas(64) std::atomic<size_t> tail;
alignas(64) std::atomic<size_t> head;
на xeon прирост в 2 раза, а на виртуалке можно считать погрешностью, но при 16 уже на виртуалке хоть и маленький, но таки -5% времени выполнения, при этом на процессоре падение.