GPU parallel computing error with Quadro RTX 5000

3 views (last 30 days)
Hello,
I've been using a Tesla GPU card with 6GB RAM with R2012a for a number of years and it has worked well. But now I need to work on larger matrix sizes (e.g., 8192x8192 fft2) the good old Tesla card can't handle anymore. So recently we bought a new Quadro RTX 5000 with 16GB RAM. The 10.1 NVidia driver installed successfully:
Picture1.png
Then I ran the following test code (gputest.m):
M = 4095;
a = rand(M); %Create M*M matrix of random numbers
b = gpuArray(a); %Send the array to GPU memory
c = 2*b; %Perform some operation
It runs sucessfully. But when I change M to 4096:
M = 4096;
a = rand(M); %Create M*M matrix of random numbers
b = gpuArray(a); %Send the array to GPU memory
c = 2*b; %Perform some operation
>> gputest
Error using parallel.gpu.GPUArray/mtimes
An unexpected error occurred trying to launch a kernel. The CUDA error
was: CUDA_ERROR_INVALID_VALUE.
Error in gputest (line 8)
c = 2*b; %Perform some operation
It seems the maximum matrix size the new Quadro RTX 5000 card can handle is 4095x4095. I can transfer larger matrices to GPU (b = gpuArray(a) with M > 4095 doesn't give errors), just can't perform any operations on them. Any ideas? Are there some settings for the GPU driver I need to change?
Thank you.
  4 Comments
Matt J
Matt J on 1 Apr 2019
There's no way you can upgrade from 2012a?
Xinbing Liu
Xinbing Liu on 1 Apr 2019
Unfortunately I only have the Parallel Computing Toolbox license for 2012a. Due to budget constraint we didn't renew annual maintenance for PCT in 2012 (so I didn't even have 2012b). Now it's not worth to renew maintenance anymore as Mathworks will make us pay for all these lapsed years. If I want the latest PCT, I better buy a new license, but budget doesn't agree...

Sign in to comment.

Accepted Answer

Joss Knight
Joss Knight on 4 Apr 2019
I'm amazed this works at all, frankly, since 2012 is about 5 generations of GPU architecture ago. Anyway, there are known issues with Turing cards and the PTX JIT compilation path. I'm afraid to say, you're going to have to upgrade MATLAB for this to work.
  4 Comments
Joss Knight
Joss Knight on 5 Apr 2019
You can't even get a 'Tesla' card any more, not from NVIDIA. They were discontinued years ago. And NVIDIA don't support them or the generation after (Fermi).
Your best best is to buy a Kepler card, e.g. Tesla K40 (they started naming the entire series Tesla after the first lot of cards that supported double precision arithmetic). That should still work with R2012a. Probably.
Walter Roberson
Walter Roberson on 5 Apr 2019
Joss is distinguishing above between the "Tesla" architecture, and the "Tesla" brand. NVIDIA markets their non-graphics cards under "Tesla" brand and under "Quattro" brand, but these days the architecture of a Tesla branded card might be even Volta.

Sign in to comment.

More Answers (1)

Xinbing Liu
Xinbing Liu on 5 Apr 2019
OK I'll get a trial version of R2019a with Parallel Computing Toolbox and see if the new Quadro card works or not. Then we'll worry about how to pay for it.

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Products


Release

R2012a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!