solving Ax=b in parallel using GPU cores
2 views (last 30 days)
Show older comments
I want to solve Ax=b using gpu cores. The matrix A=(f_i(x_j)) and b=(b(x_j)) is constructed by evaluating function over some points. Please suggest how can I use the gpu cores to solve it? Any book article related is also helpful. thanks...
gpuDevice()
ans =
CUDADevice with properties:
Name: 'GeForce GT 740M'
Index: 1
ComputeCapability: '3.5'
SupportsDouble: 1
DriverVersion: 6.5000
ToolkitVersion: 5.5000
MaxThreadsPerBlock: 1024
MaxShmemPerBlock: 49152
MaxThreadBlockSize: [1024 1024 64]
MaxGridSize: [2.1475e+09 65535 65535]
SIMDWidth: 32
TotalMemory: 2.1475e+09
FreeMemory: 2.0033e+09
MultiprocessorCount: 2
ClockRateKHz: 1032500
ComputeMode: 'Default'
GPUOverlapsTransfers: 1
KernelExecutionTimeout: 1
CanMapHostMemory: 1
DeviceSupported: 1
DeviceSelected: 1
0 Comments
Answers (1)
Joss Knight
on 19 Jun 2015
Edited: Joss Knight
on 19 Jun 2015
If you can form a dense A then do so. Then call
x = gpuArray(A) \ b;
If you need A to remain a function (perhaps it is too big to fit in GPU memory) then currently you can only do this on the CPU using one of the iterative solvers: gmres, cgs, bicg, lsqr etc
0 Comments
See Also
Categories
Find more on GPU Computing 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!