gpuArray memory requirement estimation
Show older comments
Dear All,
I was running a script employing parallel processing and a gpuArray structure. I get the following error on two PCs with different Nvidia cards
Error using gpuArray.eye An unexpected error occurred during CUDA execution. The CUDA error was: out of memory
Ressetting the gpuDevice(1) on either box does not help.
Questions: 1. How can I estimate what memory is required by any gpuArray (I know the available GPU memory with gpuDevice() command, but not that requested)
2. Besides a true relative memory deficit (task vs available), what other causes could lead to this error?
For example, I work on a PC 64 bit windows 8.1, matlab R2014a
GPU: gpuDevice()
ans =
CUDADevice with properties:
Name: 'GeForce GTX 645'
Index: 1
ComputeCapability: '3.0'
SupportsDouble: 1
DriverVersion: 5.5000
ToolkitVersion: 5.5000
MaxThreadsPerBlock: 1024
MaxShmemPerBlock: 49152
MaxThreadBlockSize: [1024 1024 64]
MaxGridSize: [2.1475e+09 65535 65535]
SIMDWidth: 32
TotalMemory: 1.0737e+09
FreeMemory: 207220736
MultiprocessorCount: 3
ClockRateKHz: 823500
ComputeMode: 'Default'
GPUOverlapsTransfers: 1
KernelExecutionTimeout: 1
CanMapHostMemory: 1
DeviceSupported: 1
DeviceSelected: 1
Thank you,
Octavian
2 Comments
Octavian
on 2 Dec 2014
Joss Knight
on 9 Sep 2015
If you still need answers to these questions, please post a new question.
Accepted Answer
More Answers (1)
Joss Knight
on 18 Dec 2014
Edited: Joss Knight
on 22 Dec 2014
1 vote
In answer to your other questions:
1. Would it be useful to get a separate NVIDIA card, dedicated to parallel processing?
Yes.
2. How are parallel tasks issued between multiple GPUs?
One MATLAB session accesses one GPU. If you have multiple workers running in a parallel pool, your GPUs will be shared out between the workers. Computation is not automatically shared between multiple GPUs, this is something you will have to do manually using a parallel pool.
3. Does it only work with NVIDIA cards, or is there just no tech support for other cards?
NVIDIA cards only. Let us know your requirements - what are you doing and what makes you need to use a different make of card?
Categories
Find more on GPU Computing in MATLAB in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!