Ответ 1
Локальная память - это только потоковая локальная глобальная память. Он намного медленнее (как с точки зрения пропускной способности, так и с задержкой), чем регистры или разделяемая память. Он также потребляет пропускную способность контроллера памяти, которая в противном случае была бы доступна для транзакций глобальной памяти. Влияние производительности на распространение или преднамеренное использование локальной памяти может быть от незначительного до серьезного, в зависимости от используемого оборудования и того, как используется локальная память.
Согласно исследованиям Василия Волкова - см. Лучшая производительность при более низкой занятости (pdf) - разница в эффективной пропускной способности между общей памятью и регистром на GPU Fermi составляет около 8 раз (около 1000 Гбит/с для общей памяти и 8000 Гбит/с для регистров). Это несколько противоречит документации CUDA, которая подразумевает, что общая память сравнима по скорости с регистрами.