Массив сохранен на графическом процессоре
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