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

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

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

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

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

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

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

Приложения

развернуть все

GPU CoderСгенерируйте код графического процессора из кода MATLAB
GPU Environment CheckПроверьте и настройте среду генерации кода графического процессора

Функции

развернуть все

codegenСгенерируйте код C/C++ из кода MATLAB
gpucoderОткрытое приложение GPU Coder
gpucoder.profileСоздайте отчет профиля выполнения для сгенерированного кода CUDA
coder.gpu.kernelПрагма, которая сопоставляет for- циклы к ядрам графического процессора
coder.gpu.kernelfunПрагма, которая сопоставляет функцию с ядрами графического процессора
coder.gpu.nokernelПрагма, чтобы отключить циклы for создания ядра

Объекты

развернуть все

coder.gpuConfigПараметры конфигурации для генерации кода CUDA из кода MATLAB при помощи GPU Coder
coder.CodeConfigПараметры конфигурации для генерации кода C/C++ из кода MATLAB
coder.EmbeddedCodeConfigПараметры конфигурации для генерации кода C/C++ из кода MATLAB с Embedded Coder
coder.gpuEnvConfigСоздайте объект настройки, содержащий параметры, переданные coder.checkGpuInstall для того, чтобы выполнить проверки среды генерации кода графического процессора

Темы

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

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

Отчеты генерации кода

Создайте и просмотрите отчеты, сгенерированные во время генерации кода.

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

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

Генерация метрического отчета графического процессора кода для кода, сгенерированного из кода MATLAB

Создайте и исследуйте графический процессор статический метрический отчет кода.

Анализ ядра

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

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

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

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

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

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

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

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

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

Укажите количество nvlink Ошибка

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

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