Чтобы использовать GPU Coder™ для генерации кода CUDA® C/C ++, установите продукты, заданные в Установке Необходимых как условие продуктов.
При генерации MEX CUDA с GPU Coder генератор кода использует компилятор NVIDIA® и библиотеки, включенные с MATLAB®. В зависимости от операционной системы на вашем компьютере разработчика только необходимо настроить генератор кода MEX.
Если у вас есть несколько версий компиляторов Microsoft® Visual Studio® для языка C/C++, установленного в вашей системе Windows®, MATLAB выбирает тот как компилятор по умолчанию. Если выбранный компилятор не совместим с версией, поддержанной GPU Coder, измените выбор. Для поддерживаемых версий Microsoft Visual Studio смотрите Устанавливающие Необходимые как условие продукты.
Чтобы изменить компилятор по умолчанию, используйте mex -setup C++
команда. Когда вы вызываете mex -setup C++
, MATLAB отображает сообщение со ссылками, чтобы настроить различный компилятор. Выберите ссылку и измените компилятор по умолчанию для создания файлов MEX. Компилятор, который вы выбираете, остается значение по умолчанию, пока вы не вызываете mex -setup C++
выбрать различное значение по умолчанию. Для получения дополнительной информации см. Компилятор Значения по умолчанию Изменения. mex -setup C++
команда изменяет только языковой компилятор C++. Необходимо также изменить компилятор по умолчанию для C при помощи mex -setup C
.
MATLAB и инструментарий CUDA поддерживают только GCC/G ++ компилятор для языка C/C++ на платформах Linux®. Для поддерживаемого GCC/G ++ версии, смотрите Устанавливающие Необходимые как условие продукты.
Автономный код (статическая библиотека, динамически подключаемая библиотека или исполняемая программа) генерация имеет дополнительный набор требования. GPU Coder использует переменные окружения, чтобы определить местоположение необходимых инструментов, компиляторов и библиотек, требуемых для генерации кода.
Примечание
На Windows пробел или специальный символ в пути к инструментам, компиляторам и библиотекам могут создать проблемы во время процесса сборки. Необходимо установить стороннее программное обеспечение в местоположениях, которое не содержит пробелы или изменяет настройки Windows, чтобы включить создание кратких названий для файлов, папок и путей. Для получения дополнительной информации смотрите Используя решение для кратких названий Windows в MATLAB Answers.
Платформа | Имя переменной | Описание |
---|---|---|
Windows | CUDA_PATH | Путь к установке инструментария CUDA. Например:
|
NVIDIA_CUDNN | Путь к корневой папке cuDNN установки. Корневая папка содержит интервал, включайте, и подпапки lib. Например:
| |
NVIDIA_TENSORRT | Путь к корневой папке установки TensorRT. Корневая папка содержит интервал, данные, включайте, и подпапки lib. Например:
| |
OPENCV_DIR | Путь к папке сборки OpenCV на хосте. Эта переменная требуется для создания и выполнения примеров глубокого обучения. Например:
| |
PATH | Путь к исполняемым файлам CUDA. Обычно инсталлятор инструментария CUDA устанавливает это значение автоматически. Например:
| |
Путь к Например:
| ||
Путь к Например:
| ||
Путь к Динамически подключаемым библиотекам (DLL) OpenCV. Эта переменная требуется для рабочих примеров глубокого обучения. Например:
| ||
Linux | PATH | Путь к исполняемому файлу инструментария CUDA. Например:
|
Путь к библиотекам OpenCV. Эта переменная требуется для создания и выполнения примеров глубокого обучения. Например:
| ||
Путь к заголовочным файлам OpenCV. Эта переменная требуется для создания примеров глубокого обучения. Например:
| ||
LD_LIBRARY_PATH | Путь к папке библиотеки CUDA. Например:
| |
Путь к cuDNN папке библиотеки. Например:
| ||
Путь к папке библиотеки TensorRT™. Например:
| ||
Путь к папке Library ARM® Compute на целевом компьютере. Например:
Установите | ||
NVIDIA_CUDNN | Путь к корневой папке cuDNN установки библиотеки. Например:
| |
NVIDIA_TENSORRT | Путь к корневой папке установки библиотеки TensorRT. Например:
| |
ARM_COMPUTELIB | Путь к корневой папке ARM Вычисляет установку Библиотеки на целевом компьютере ARM. Установите это значение на целевом компьютере ARM. Например:
|
Чтобы проверить, что ваш компьютер разработчика имеет все инструменты и настройку, необходимую для генерации кода графического процессора, используйте coder.checkGpuInstall
функция. Эта функция выполняет проверки, чтобы проверить, имеет ли ваша среда все сторонние программы и библиотеки, требуемые для генерации кода графического процессора. Необходимо передать coder.gpuEnvConfig
возразите против функции. Эта функция проверяет среду генерации кода графического процессора на основе свойств, заданных в данном объекте настройки.
Можно также использовать эквивалентное основанное на графический интерфейсе пользователя приложение, которое выполняет те же проверки и может быть запущено с помощью команды, Check GPU Install.
В командном окне MATLAB, введите:
gpuEnvObj = coder.gpuEnvConfig;
gpuEnvObj.BasicCodegen = 1;
gpuEnvObj.BasicCodeexec = 1;
gpuEnvObj.DeepLibTarget = 'tensorrt';
gpuEnvObj.DeepCodeexec = 1;
gpuEnvObj.DeepCodegen = 1;
results = coder.checkGpuInstall(gpuEnvObj)
Выход, показанный здесь, является представительным. Ваши результаты могут отличаться.
Compatible GPU : PASSED CUDA Environment : PASSED Runtime : PASSED cuFFT : PASSED cuSOLVER : PASSED cuBLAS : PASSED cuDNN Environment : PASSED TensorRT Environment : PASSED Basic Code Generation : PASSED Basic Code Execution : PASSED Deep Learning (TensorRT) Code Generation: PASSED Deep Learning (TensorRT) Code Execution: PASSED results = struct with fields: gpu: 1 cuda: 1 cudnn: 1 tensorrt: 1 basiccodegen: 1 basiccodeexec: 1 deepcodegen: 1 deepcodeexec: 1 tensorrtdatatype: 1 profiling: 0