Similar question has already been asked, but in that case, the method didn't work due to OpenCL compatibility. I have an older CUDA card. Worked great with CUDALink in Mathematica 8:
CUDAInformation[]
{1 -> {"Name" -> "GeForce GTX 460", "Clock Rate" -> 1526000,
"Compute Capabilities" -> 2.1, "GPU Overlap" -> 1,
"Maximum Block Dimensions" -> {1024, 1024, 64},
"Maximum Grid Dimensions" -> {65535, 65535, 65535},
"Maximum Threads Per Block" -> 1024,
"Maximum Shared Memory Per Block" -> 49152,
"Total Constant Memory" -> 65536, "Warp Size" -> 32,
"Maximum Pitch" -> 2147483647, "Maximum Registers Per Block" -> 32768,
"Texture Alignment" -> 512, "Multiprocessor Count" -> 7,
"Core Count" -> 224, "Execution Timeout" -> 1, "Integrated" -> False,
"Can Map Host Memory" -> True, "Compute Mode" -> "Default",
"Texture1D Width" -> 65536, "Texture2D Width" -> 65536,
"Texture2D Height" -> 65535, "Texture3D Width" -> 2048,
"Texture3D Height" -> 2048, "Texture3D Depth" -> 2048,
"Texture2D Array Width" -> 16384,
"Texture2D Array Height" -> 16384,
"Texture2D Array Slices" -> 2048, "Surface Alignment" -> 512,
"Concurrent Kernels" -> True, "ECC Enabled" -> False,
"TCC Enabled" -> False, "Total Memory" -> 805306368}}
When I run a NetTrain with Mathematica 11 using GPU as TrainingDevice, I receive:
Failure[\[WarningSign] Message: TargetDevice -> {GPU,0} could not
be used, please ensure that you have a compatible graphics card and
have installed CUDA drivers.
Tag: NetTrain
]
Any ideas why it won't use my GPU? I understand that this puny old card is laughable, compared to some of the GPU computation setups you've been using, but I need to understand that this works and does what I need before I justify an expensive upgrade.
UPDATE WITH ANOTHER GPU AND V11.1:
Tried running Mathematica 11.1 on a 64x Win7 laptop with 2 GPUs - Intel integrated and NVIDIA K2100M discrete GPU (compute capability 3.0). Latest drivers installed, system restarted a number of times and set to use the discrete graphics card, Nvidia control panel shows Mathematica running on the GPU, CUDALink functions/demos work fine:
CUDAInformation[]
{1->{Name->Quadro K2100M,Clock Rate->666500,Compute Capabilities->3.,GPU Overlap->1,Maximum Block Dimensions->{1024,1024,64},Maximum Grid Dimensions->{2147483647,65535,65535},Maximum Threads Per Block->1024,Maximum Shared Memory Per Block->49152,Total Constant Memory->65536,Warp Size->32,Maximum Pitch->2147483647,Maximum Registers Per Block->65536,Texture Alignment->512,Multiprocessor Count->3,Core Count->96,Execution Timeout->1,Integrated->False,Can Map Host Memory->True,Compute Mode->Default,Texture1D Width->65536,Texture2D Width->65536,Texture2D Height->65536,Texture3D Width->4096,Texture3D Height->4096,Texture3D Depth->4096,Texture2D Array Width->16384,Texture2D Array Height->16384,Texture2D Array Slices->2048,Surface Alignment->512,Concurrent Kernels->True,ECC Enabled->False,TCC Enabled->False,Total Memory->2147483648}}
CUDADriverVersion[]
368.39
NetTrain[] returns this message:
NetTrain::badtrgdev: TargetDevice -> GPU could not be used, please ensure that you have a compatible NVIDIA graphics card and have installed the latest drivers.
So 3.0 and waiting for 11.1 did not fix the problem. What gives? Any ideas?