exponenta event banner

coder.gpuEnvConfig

Создать объект конфигурации, содержащий параметры, переданные coder.checkGpuInstall для выполнения проверок среды генерации кода графического процессора

Описание

coder.gpuEnvConfig объект содержит параметры конфигурации, которые coder.checkGpuInstall используется для проверки среды генерации кода графического процессора.

Создание

Описание

gpuEnvObj = coder.gpuEnvConfig создает gpuEnvConfig объект конфигурации для компьютера разработки хоста.

пример

gpuEnvObj = coder.gpuEnvConfig(hw) создает gpuEnvConfig объект конфигурации для типа оборудования, указанного в hw. hw может принимать значение 'host', 'jetson', или 'drive'. Для типов Jetson и DRIVE требуется пакет Coder™ поддержки MATLAB ® для платформ NVIDIA ® Jetson ® и NVIDIA DRIVE™.

Свойства

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

Это поле является свойством, доступным только для чтения во время создания gpuEnvConfig объект конфигурации. Это поле может принимать значение 'host', 'jetson', или 'drive'. Типы Jetson и DRIVE требуют пакета поддержки кодеров MATLAB для платформ NVIDIA Jetson и NVIDIA DRIVE.

Пример: gpuEnvObj.Hardware

Выберите идентификатор устройства графического процессора, который должен использоваться при проверке среды. По умолчанию GpuId имеет значение 0.

Пример: gpuEnvObj.GpuId = 1;

Если в этом поле установлено значение true, выполняется основная проверка формирования кода GPU. Созданный код не выполнен.

Пример: gpuEnvObj.BasicCodegen = true;

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

Пример: gpuEnvObj.BasicCodeexec = true;

Если в этом поле установлено значение true, для целевого объекта библиотеки, указанного DeepLibTarget собственность. Созданный код не выполнен.

Пример: gpuEnvObj.DeepCodegen = true;

Если в этом поле установлено значение true, для целевого объекта библиотеки, указанного DeepLibTarget на выбранном устройстве графического процессора.

Пример: gpuEnvObj.DeepCodeexec = true;

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

Пример: gpuEnvObj.DeepLibTarget = 'cudnn';

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

Пример: gpuEnvObj.DataType = 'fp32';

Если в этом поле установлено значение true, в текущей рабочей папке создается HTML-отчет о результатах. Текущая рабочая папка должна быть включена для записи.

Пример: gpuEnvObj.GenReport = true;

Если в этом поле установлено значение true, вывод, напечатанный в командной строке, подавляется.

Пример: gpuEnvObj.Quiet = true;

Проверьте правильность настройки установки библиотеки NVTX на хост-компьютере. Эта библиотека используется для профилирования.

Пример: gpuEnvObj.Profiling = true;

Это поле содержит путь к библиотекам CUDA ® на хосте. Значение по умолчанию основано на текущемnvcc местоположение в ОС Linux и в переменной среды «CUDA_PATH» в ОС Windows. Это значение также можно изменить для выбора другого расположения.

Пример: gpuEnvObj.CudaPath = '/usr/local/cuda';

Это поле содержит путь к библиотекам cuDNN на хосте. Значение по умолчанию основано на переменной среды «NVIDIA_CUDNN», если она установлена. Можно также изменить это значение, чтобы выбрать другое расположение.

Пример: gpuEnvObj.CudnnPath = '/usr/local/cuda/cudnn';

Это поле содержит путь к библиотекам TensorRT на хосте. Значение по умолчанию основано на переменной среды «NVIDIA_TENSORRT», если она установлена. Можно также изменить это значение, чтобы выбрать другое расположение.

Пример: gpuEnvObj.TensorrtPath = '/usr/local/cuda/tensorrt';

Это поле содержит путь к библиотекам NVTX на хосте. Значение по умолчанию основано на переменной среды «NVTOOLSEXT_PATH» в ОС Windows, если она установлена. В Linux он получается из «LD_LIBRARY_PATH.» Можно также изменить это значение, чтобы выбрать другое расположение.

Пример: gpuEnvObj.NvtxPath = '/usr/local/cuda/';

Это поле принимает аппаратный объект «jetson» или «drive». Это поле необходимо установить (для jetson/drive) перед проверкой рабочей среды на плате.

Пример: gpuEnvObj.Hardware = jetsonHwObj;

Укажите время в секундах, в течение которого программное обеспечение ожидает проверки выполнения тестов на целевом объекте.

Пример: gpuEnvObj.ExecTimeout = 25;

Примеры

свернуть все

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

Создать coder.gpuEnvConfig объект, который можно передать coder.checkGpuInstall функция.

В окне команд 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
Представлен в R2019a