“nvprof --query-metrics”给出了CUDA分析错误。说找不到任何指标。怎么克服?我的gpu是GTX 960。 操作系统Cent OS 6.5。 Cuda 6.5,64位版本 这是我的机器给出的输出。
[root @ Sekhar finalCodes] #nvprof --query-metrics
可用指标: 名称描述 设备0(GeForce GTX 960): ========错误:CUDA分析错误。
[root @ Sekhar finalCodes] #nvprof --analysis-metrics
========警告:在设备0上找不到指标“stall_imc”。
========警告:在设备0上找不到指标“stall_compute”。
========警告:在设备0上找不到指标“stall_texture”。
========警告:在设备0上找不到指标“stall_other”。
========警告:在设备0上找不到指标“stall_exec_dependency”。
========警告:在设备0上找不到指标“stall_inst_fetch”。
========警告:在设备0上找不到指标“stall_sync”。
以及更多像这样的行。
我的所有程序都经过编译和执行。
nvprof ./myFile也提供以下输出。
== 4075 ==分析应用程序:./ myFile
== 4075 ==分析结果:
时间(%)时间调用平均最小名称
99.94%71.093ms 500 142.19us 135.17us 146.46us void collideKernel(SodA,int,int,int)
0.05%37.151us 9 4.1270us 3.9990us 4.5120us [CUDA memcpy HtoD]
0.01%7.7760us 2 3.8880us 3.8720us 3.9040us [CUDA memcpy DtoH]
== 4075 == API调用:
时间(%)时间调用平均最小名称
75.44%285.43ms 18 15.857ms 4.3210us 285.35ms cudaMallocPitch
19.14%72.422ms 1000 72.421us 1.1560us 218.21us cudaEventSynchronize
3.30%12.491ms 1000 12.490us 706ns 11.523ms cudaEventCreate
0.87%3.3010ms 500 6.6010us 5.9150us 37.636us cudaLaunch
0.49%1.8493ms 1000 1.8490us 1.4670us 22.908us cudaEventRecord
0.17%660.35us 500 1.3200us 1.1920us 4.1100us cudaEventElapsedTime
0.15%579.85us 83 6.9860us 445ns 264.17us cuDeviceGetAttribute
0.15%575.57us 1 575.57us 575.57us 575.57us cudaGetDeviceProperties
0.11%422.92us 2000 211ns 169ns 2.9590us cudaSetupArgument
0.06%220.54us 11 20.048us 12.854us 62.371us cudaMemcpy2D
0.04%158.03us 18 8.7790us 3.3490us 81.821us cudaFree
0.04%155.07us 500 310ns 274ns 1.9820us cudaConfigureCall
答案 0 :(得分:1)
使用NVIDIA驱动程序352.63和Cuda 7.5.18,除了极少数指标外,其他指标都可用
"l1_shared_utilization"
"alu_fu_utilization"
"l2_l1_read_transactions"
"l2_l1_write_transactions"
"nc_l2_read_transactions"
"l2_l1_read_throughput"
"l2_l1_write_throughput"
"nc_l2_read_throughput"
"atomic_throughput".
较新的驱动程序和工具包版本提供了事件和指标。