Производительность

Диагностируйте проблемы генерации кода, улучшите время выполнения кода и уменьшайте использование памяти сгенерированного кода

Три из наиболее распространенных причин, почему сгенерированный код GPU Coder™ не выполняет как ожидалось:

  • Ядра CUDA® не создаются.

  • Разместите к устройству и устройству к передачам памяти хоста (cudaMemcpy) регулируют производительность.

  • Недостаточно параллелизма или проблем устройств.

Этот раздел уточняет частые причины для этих признаков и описывает, как использовать встроенного сотрудника досмотра, чтобы обнаружить эти проблемы. Это также предоставляет информацию о том, как работать вокруг на эти проблемы и сгенерировать более эффективный код CUDA.

Темы

Рабочий процесс

Рабочий процесс поиска и устранения неисправностей GPU Coder.

Проследите между кодом MATLAB и сгенерированным кодом CUDA

Подсветите разделы кода MATLAB, который работает на графическом процессоре

Анализ ядра

Рекомендации для генерации эффективных ядер CUDA.

Анализ узкого места памяти

Уменьшайте проблемы узкого места памяти при использовании GPU Coder.

Анализируйте профили выполнения сгенерированного кода

Мелкомодульное профилирование для данного алгоритма MATLAB и его сгенерированного кода CUDA через SIL.

Анализ с профилировщиком NVIDIA

Улучшайте производительность с помощью информации, полученной от Профилировщика NVIDIA (nvvp).

Ограничения GPU Coder

Смотрите текущие ограничения GPU Coder.

Рекомендуемые примеры