Эффективность

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

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

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

  • Хост к устройству и устройству для переноса памяти (cudaMemcpy) являются дросселирующей эффективностью.

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

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

Приложения

расширить все

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

Функции

расширить все

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

Объекты

расширить все

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

Темы

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

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

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

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

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

Выделите разделы кода MATLAB, который запускается на графическом процессоре.

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

Создайте и исследуйте отчет о статических метриках кода GPU.

Анализ ядра

Рекомендации по созданию эффективных ядер CUDA.

Анализ узких мест в памяти

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

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

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

Анализ с помощью Профилировщик

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

Ограничения, накладываемые на GPU Coder

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

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