Массив сохранен на графическом процессоре
gpuArray
объект представляет массив, сохраненный на графическом процессоре. Работать с gpuArray
объекты, используйте любую поддерживающую графический процессор функцию MATLAB®. Можно использовать массив для прямых вычислений или в ядрах CUDA, которые выполняются на графическом процессоре. Для получения дополнительной информации смотрите функции MATLAB Запуска на графическом процессоре.
Если вы хотите получить массив из графического процессора, например, при использовании функции, которая не поддерживает gpuArray
объекты, используйте gather
функция.
Примечание
Можно загрузить файлы MAT, содержащие gpuArray данные как массивы в оперативной памяти, когда графический процессор не доступен. gpuArray, загруженный без графического процессора, ограничивается, и вы не можете использовать его для расчетов. Чтобы использовать gpuArray, загруженный без графического процессора, получите использование содержимого gather
.
Используйте gpuArray
преобразовывать массив в рабочем пространстве MATLAB в gpuArray
объект. Много функций MATLAB также позволяют вам создавать gpuArray
объекты непосредственно. Для получения дополнительной информации смотрите, Устанавливают Массивы на графическом процессоре.
Существует несколько методов для исследования характеристик gpuArray
объект. Большинство ведет себя как функции MATLAB того же имени.
existsOnGPU | Определите, доступны ли gpuArray или CUDAKernel на графическом процессоре |
isequal | Определите равенство массивов |
isnumeric | Определите, является ли введенный числовым массивом |
issparse | Определите, разреженно ли введенный |
isUnderlyingType | Определите, задал ли введенный базовый тип данных |
length | Длина самого большого измерения массива |
ndims | Количество измерений массива |
size | Размер массивов |
underlyingType | Тип базовых данных, определяющих поведение массивов |
Другие методы для gpuArray
объекты являются слишком многочисленными, чтобы перечислить здесь. Большинство напоминает и ведет себя то же самое как функции MATLAB того же имени. Смотрите функции MATLAB Запуска на графическом процессоре.
Если вам нужна увеличенная эффективность, или если функция не доступна для графического процессора, gpuArray
поддержки следующие опции:
Предварительно скомпилировать и запустить чисто поэлементный код по gpuArray
объекты, используйте arrayfun
функция.
Чтобы запустить Код С++, содержащий код устройства CUDA® или вызовы библиотеки, используйте MEX-функцию. Для получения дополнительной информации смотрите, что MEX-функции Запуска Содержат Код CUDA.
Чтобы запустить существующие ядра графического процессора, написанные в C++ CUDA, используйте интерфейс MATLAB CUDAKernel. Для получения дополнительной информации смотрите Запуск CUDA или Код PTX по графическому процессору.
Чтобы сгенерировать код CUDA из кода MATLAB, используйте GPU Coder™. Для получения дополнительной информации смотрите Начало работы с GPU Coder (GPU Coder).
Можно управлять потоком случайных чисел на использовании графического процессора gpurng
.
Ни одно из следующего не может превысить intmax('int32')
:
Число элементов плотного массива.
Количество ненулевых элементов разреженного массива.
Размер в любой данной размерности. Например, zeros(0,3e9,'gpuArray')
не позволен.
Можно также создать gpuArray
объект с помощью некоторых функций MATLAB путем определения gpuArray
вывод . В следующей таблице перечислены доступные функции MATLAB, которые могут создать gpuArray
объекты непосредственно.
|
|
|
|
|
|
| gpuArray. colon |
| gpuArray. freqspace |
| gpuArray. linspace |
| gpuArray. logspace |
gpuArray. speye |
Для специфичной для класса справки на функциях с gpuArray
префикс, ввести
help gpuArray.functionname
где functionname
имя метода. Например, чтобы получить справку на colon
Ввод
help gpuArray.colon