Для каких размеров обычная загрузка и сохранение в глобальной памяти в CUDA atomic?

Являются ли общие операции чтения и записи в глобальной памяти атомарными в CUDA, если:

Это 4-х байтовая инструкция? (Я предполагаю, что да)Это 8-байтовая или 16-байтовая инструкция? (Я предполагаю, что да)

По крайней мере, на Кеплере и Ферми обычно 4-байтовые операции чтения и записи в глобальную атомарную память на уровне деформации или 8/16 байтные инструкции на уровне деформации половины / четверти, если:

Все потоки деформации обращаются к одному и тому же 32-байтовому блоку транзакции L2? (Я предполагаю, что да)Потоки деформации получают доступ к различным 32-байтовым блокам транзакций L2, но все потоки деформации получают доступ к одной и той же 128-байтовой строке кэша L2? (Я предполагаю нет)Все потоки деформации обращаются к разным строкам кэша L2? (Я предполагаю нет)

Если какое-либо из этих предположений об атомарности на уровне деформации является правильным, есть ли какой-либо метод использования этих знаний, не рискуя совместимостью для будущих вычислительных возможностей?

Ответы на вопрос(1)

Ваш ответ на вопрос