Причины появления новой проблемы в NVIDIA Nsight Visual Studio Edition 4.1 RC1

В NVIDIA Nsight Visual Studio Edition 4.1 RC1 деформация Причины задержки выдачи разделены на 9 типов вместо 6 в версии 4.0. Судя по всему, «Запросы данных» были удалены, добавлены «Дросселирование памяти», «Зависимость от памяти», «Постоянный промах».

Однако Раздел «Причины зависания» в руководстве пользователя NVIDIA Nsight Visual Studio Edition 4.1 (тот самый раздел, на который вы перенаправляетесь, щелкнув синий значок с белым знаком вопроса в правом верхнем углу пользовательского интерфейса «Причины зависания») не был обновлен с тот же раздел в руководстве пользователя NVIDIA Nsight Visual Studio Edition 4.0.

Мне интересно, каковы причины остановки новой проблемы и каковы некоторые способы их уменьшения.

4.1:

1

4.0:

2


person Community    schedule 31.07.2014    source источник


Ответы (1)


В Nsight 4.1 убраны следующие причины:

Запрос данных удален. В Nsight ‹= 4.0 запрос данных утверждался, когда варп не мог выдать запрос данных.

В Nsight 4.1 были добавлены следующие причины:

Дросселирование памяти. Деформация устанавливает остановку дросселирования памяти, когда она не может выполнить команду из-за нехватки ресурсов в пути данных памяти. Если эта причина высока, попробуйте решить проблемы с объединением памяти (расхождением данных), которые приводят к повторному воспроизведению инструкций, или попробуйте агрегировать доступ к памяти в векторный доступ. На устройствах CC5.x эта причина также может возникать в конце ядра, если потоки выдают несколько хранилищ памяти, а затем завершаются.

Зависимость от памяти. Деформация устанавливает зависимость от памяти, когда его следующая инструкция не может быть выполнена из-за зависимости от памяти или зависимости от текстуры. Если эта причина высока, попробуйте (а) улучшить объединение памяти, (б) улучшить параллелизм на уровне памяти, (в) переместить часто используемые данные ближе к SM (например, в разделяемую память), (г) попытаться вычислить данные вместо загрузки data, или (e) на SM3.5 попробуйте использовать LDG.

Постоянный промах. Деформация утверждает постоянную остановку промаха, если варпы пытаются получить доступ к константе, а константа отсутствует в кеше. Если эта причина высока, попробуйте сгруппировать константы, используемые ядром, в одну и ту же область памяти констант (переместите объявления близко друг к другу), попробуйте переместить константы в глобальную память или попробуйте вычислить константы.

Канал занят. Деформация сообщает о том, что канал занят, если путь данных, требуемый для следующей инструкции деформации, занят и деформация не может быть выполнена. Если эта причина высока, посмотрите на графики эксперимента «Использование трубы» и попытайтесь уменьшить любую трубу с высокой загрузкой. Избегание инструкций с низкой пропускной способностью также может помочь.

person Greg Smith    schedule 27.10.2014