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

Общие ограничения

  • Пространства в именах файлов и путей вызывают ошибки сборки в Linux®. GPU Coder™ использует инструменты GNU make, которые имеют известные ограничения, когда имена файлов содержат пространства. Обычно рекомендуется избегать пространств в именах файлов, проектов и путей.

  • GPU Coder отключает проверки целостности и границ массивов, которые являются частью MATLAB® Coder™.

  • При использовании coder.inline('never') опция во время генерации кода, GPU Coder создает ядро только для функции точки входа, содержащей coder.gpu.kernelfun pragma и не создает ядра автоматически для каких-либо подфункций в функции точки входа. Поэтому рекомендуется не использовать coder.inline('never') опция.

  • Генерация ядер для структур с массивами переменного размера не поддерживается.

  • CUDA® выбранная вами вычислительная возможность должна совпадать с вычислительной способностью вашего оборудования.

  • При использовании coder.ceval с указателями на графический процессор опция Check for Issues для CPU не поддерживается.

  • GPU Coder не поддерживает генерацию кода для Simulink® блоки. Вы не можете использовать NVIDIA Jetson и NVIDIA Drive платы из опции Hardware board на панели Hardware Implementation и целевой NVIDIA® Графические процессоры.

Ограничения по функциям

  • Можно сгенерировать код CUDA только для подмножества встроенных функций MATLAB и функций тулбокса.

  • При нацеливании на NVIDIA Tegra® устройства, GPU Coder не поддерживает quasi-euclidean метод bwdist функция и размерности изображения больше 3.

  • Когда imfilter используется с 1xN ядром, и N является четным целым числом, общая память не используется в сгенерированном коде. Когда imfilter используется с трехмерным изображением, общая память не используется в conv2 реализация.

  • GPU Coder имеет пустой отчет о замене кода, даже если есть замена. Эта проблема была идентифицирована с atan функция.

Неподдерживаемые функции CUDA

Список функций CUDA, которые не поддерживаются:

  • Память текстур

  • Асинхронные потоки

  • Динамический вызов ядра - вызов ядер из ядер

Похожие темы