이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
gpuArray
GPU에 저장된 배열
설명
gpuArray
객체는 GPU 메모리에 저장된 배열을 나타냅니다. MATLAB®과 기타 툴박스의 많은 함수들이 gpuArray
객체를 지원하므로, 사용자는 코드를 최소한으로 변경하여 GPU에서 코드를 실행할 수 있습니다. gpuArray
객체로 작업하려면 gpuArray
를 지원하는 MATLAB 함수(예: fft
, mtimes
또는 mldivide
)를 사용하십시오. MATLAB과 기타 툴박스에서 gpuArray
를 지원하는 함수의 전체 목록을 보려면 GPU 지원 함수를 참조하십시오. 자세한 내용은 GPU에서 MATLAB 함수 실행하기 항목을 참조하십시오.
GPU로부터 배열을 가져오려면 gather
함수를 사용하십시오(예를 들어, gpuArray
객체를 지원하지 않는 함수를 사용하는 경우).
참고
GPU를 사용할 수 없는 경우 gpuArray
데이터가 포함된 MAT 파일을 메모리 내 배열로 불러올 수 있습니다. GPU 없이 불러온 gpuArray
객체는 사용이 제한되며 계산에 사용할 수 없습니다. GPU 없이 불러온 gpuArray
객체를 사용하려면 gather
함수로 배열 내 내용을 가져오십시오.
생성
gpuArray
를 사용하여 MATLAB 작업 공간에 있는 배열을 gpuArray
객체로 변환합니다. 이 밖에도 몇몇 MATLAB 함수에서 gpuArray
객체를 직접 만들 수 있습니다. 자세한 내용은 GPU에서 배열 설정하기 항목을 참조하십시오.
입력 인수
객체 함수
gpuArray
객체의 특성을 확인하기 위한 몇 가지 메서드가 있습니다. 대부분 같은 이름의 MATLAB 함수와 비슷하게 동작합니다.
isgpuarray | 입력값이 gpuArray 인지 여부 확인 |
existsOnGPU | GPU에서 gpuArray 또는 CUDAKernel을 사용할 수 있는지 여부를 확인합니다. |
isUnderlyingType | Determine whether input has specified underlying data type |
ndims | 배열의 차원 수 |
size | 배열 크기 |
underlyingType | Type of underlying data determining array behavior |
몇몇 MATLAB 툴박스에는 gpuArray
를 지원하는 함수가 포함되어 있습니다. 이러한 툴박스에서 gpuArray
객체를 지원하는 모든 함수 목록을 보려면 다음 표에 나와 있는 링크를 사용하십시오. 목록에서 정보 표시가 있는 함수에는 GPU에서 함수 실행 시 유의해야 할 사용법 관련 참고 및 제한 사항이 있습니다. 함수 도움말 페이지의 확장 기능 섹션에서 사용법 관련 참고 및 제한 사항을 확인할 수 있습니다. gpuArray
를 지원하는 각 함수의 업데이트에 대한 자세한 내용은 릴리스 정보를 참조하십시오.
툴박스 이름 | gpuArray 를 지원하는 함수 목록 | GPU 관련 문서 |
---|---|---|
MATLAB | gpuArray 를 지원하는 함수 | |
Statistics and Machine Learning Toolbox™ | gpuArray 를 지원하는 함수 (Statistics and Machine Learning Toolbox) | Analyze and Model Data on GPU (Statistics and Machine Learning Toolbox) |
Image Processing Toolbox™ | gpuArray 를 지원하는 함수 (Image Processing Toolbox) | GPU 연산 (Image Processing Toolbox) |
Deep Learning Toolbox™ |
*(GPU를 사용한 딥러닝 항목 참조) | Scale Up Deep Learning in Parallel, on GPUs, and in the Cloud (Deep Learning Toolbox) 복수의 GPU에서 MATLAB을 사용한 딥러닝 (Deep Learning Toolbox) |
Computer Vision Toolbox™ | gpuArray 를 지원하는 함수 (Computer Vision Toolbox) | GPU 코드 생성 및 가속 (Computer Vision Toolbox) |
Communications Toolbox™ | gpuArray 를 지원하는 함수 (Communications Toolbox) | Code Generation and Acceleration Support (Communications Toolbox) |
Signal Processing Toolbox™ | gpuArray 를 지원하는 함수 (Signal Processing Toolbox) | 코드 생성 및 GPU 지원 (Signal Processing Toolbox) |
Audio Toolbox™ | gpuArray 를 지원하는 함수 (Audio Toolbox) | Code Generation and GPU Support (Audio Toolbox) |
Wavelet Toolbox™ | gpuArray 를 지원하는 함수 (Wavelet Toolbox) | 코드 생성 및 GPU 지원 (Wavelet Toolbox) |
Curve Fitting Toolbox™ | gpuArray 를 지원하는 함수 (Curve Fitting Toolbox) |
모든 MathWorks® 제품에서 gpuArray
를 지원하는 함수의 목록은 gpuArray
지원 함수 페이지를 참조하십시오. 또는 제품별로 필터링할 수도 있습니다. 도움말 표시줄에서 함수를 클릭합니다. 함수 목록의 왼쪽 창에서 찾아볼 제품, 예를 들어, MATLAB을 선택합니다. 왼쪽 창 하단에서 GPU 배열을 선택합니다. gpuArray
를 지원하는 함수가 없는 제품을 선택할 경우 GPU 배열 필터가 제공되지 않습니다.
예제
팁
향상된 성능이 필요한 경우 또는 함수를 GPU에서 사용할 수 없는 경우
gpuArray
는 다음 옵션을 지원합니다.gpuArray
객체에서 순수하게 요소별로 동작하는 코드만 미리 컴파일하고 실행하려면arrayfun
함수를 사용합니다.CUDA® 장치 코드 또는 라이브러리 호출이 포함된 C++ 코드를 실행하려면 MEX 함수를 사용합니다. 자세한 내용은 CUDA 코드가 포함된 MEX 함수 실행하기 항목을 참조하십시오.
CUDA C++로 작성된 기존 GPU 커널을 실행하려면 MATLAB CUDAKernel 인터페이스를 사용합니다. 자세한 내용은 GPU에서 CUDA 또는 PTX 코드 실행하기 항목을 참조하십시오.
MATLAB 코드에서 CUDA 코드를 생성하려면 GPU Coder™를 사용합니다. 자세한 내용은 Get Started with GPU Coder (GPU Coder) 항목을 참조하십시오.
gpurng
를 사용하여 GPU에서 난수 스트림을 제어할 수 있습니다.다음 항목은 모두
intmax("int32")
를 초과할 수 없습니다.조밀 배열의 요소 개수.
희소 배열의 0이 아닌 요소의 개수.
지정된 차원의 크기. 예를 들어,
zeros(0,3e9,"gpuArray")
는 허용되지 않습니다.
대안
일부 MATLAB 함수에서 gpuArray
출력값을 지정해 gpuArray
객체를 만들 수도 있습니다. 다음 표에는 gpuArray
객체를 직접 만들 수 있는 MATLAB 함수가 나와 있습니다. 자세한 내용은 함수 도움말 페이지의 확장 기능 섹션을 참조하십시오.
확장 기능
버전 내역
R2010b에 개발됨
참고 항목
isgpuarray
| canUseGPU
| arrayfun
| gpuDevice
| existsOnGPU
| gather
| reset
| pagefun
| gputimeit