【发布时间】:2014-10-10 21:43:52
【问题描述】:
为了比较 GPU 与 CPU 计算的速度,我从 MATLAB Central 运行了可用的示例代码 here(GPU 上的 Mandelbrot 集)。以下是我得到的结果:
案例 1(无 GPU):6.2 秒
案例 2(使用 parallel.gpu.GPUArray):6.518 秒(示例中为 1.39 秒)
案例 3(使用逐元素操作):1.259 秒(示例中为 0.14 秒)
可以看出,案例 2 没有任何改进,案例 3 仅略有改进 4 倍左右。由于示例没有说明他们使用的 GPU 的详细信息,请问这是否仅仅是由于我的显卡“无能”还是我错过了一些重要的东西?
显卡还负责驱动我的显示器(HP Z Display Z23i 23 英寸 IPS LED 背光显示器)。
CPU:Intel i7-4790,3.6 GHz(8 核)
GPU:
Name: 'NVS 510'
Index: 1
ComputeCapability: '3.0'
SupportsDouble: 1
DriverVersion: 6
ToolkitVersion: 5
MaxThreadsPerBlock: 1024
MaxShmemPerBlock: 49152
MaxThreadBlockSize: [1024 1024 64]
MaxGridSize: [2.1475e+09 65535 65535]
SIMDWidth: 32
TotalMemory: 2.1475e+09
FreeMemory: 1.6934e+09
MultiprocessorCount: 1
ClockRateKHz: 797000
ComputeMode: 'Default'
GPUOverlapsTransfers: 1
KernelExecutionTimeout: 1
CanMapHostMemory: 1
DeviceSupported: 1
DeviceSelected: 1
谢谢!
编辑
示例here 中使用的 GPU 是 Tesla C2050。 (感谢@Sam Roberts)
【问题讨论】:
-
在 Ben Tordoff 撰写您链接到的文章时,我曾与他一起工作。如果我没记错的话,他使用的是特斯拉 C2050,当时(2011 年)相当高端。
标签: performance matlab cuda gpu