I’m trying to identify the source of some bank conflicts in my code, and for that, I’m relying on NVVP. It accuses a low shared memory efficiency (about 20% for this kernel).
When I go to the unguided analysis option, in “Shared Memory Access Pattern” I can see many warnings with the ratio of Load/Store transactions per access much higher than the ideal but I can’t see the point in the source code where it happens. Above that, I see a box that says “No Source File Mapping”, which suggests that I should recompile with -lineinfo to enable source-file mappings. I’m already doing that.
Does anyone know how to fix this source-mapping issue?
I have a Tesla V100 and tested CUDA 10.2 and 11.3.
hi sir
Have you solve the issue . I am also facing similar issue
i am not able to see the hotspot and source code along with its path in the kernel profile in the unguided analysis in nvvp
the steps done were
#include <cuda.h>
#include <stdio.h>
__global__ void test()
{
int i,j;
for(i=0;i<10;i++)
for(j=0;j<100;j++)
{
// printf("Hello gpu\n");
}
}
int main()
{
printf("Hello from the CPU\n");
test<<<2,32>>>();
cudaError_t err = cudaGetLastError();
if (err != cudaSuccess) {
printf("CUDA Error: %s\n", cudaGetErrorString(err));
}
printf("next is cudaDeviceSynchronize()\n");
cudaDeviceSynchronize();
return 0;
}
In nvvp GUI at the timeline i have selected the function “test” then-> unguided analysis-> then select the some part of function test timeline → then selected the kernel profile- pc sampling
but it is saying
Unable to create source/assembly view for kernel Profile-PC sampling analysis.
As shown below
By default nvprof collects tracing information if no profiling option is given. Please check result after using the command line option --analysis-metrics. This helps in collecting the profiling data which is needed for the guided/unguided analysis system backed into the Visual Profiler.
For collecting only PC Sampling information, use option --source-level-analysis pc_sampling.
Side note - Visual Profiler and nvprof will be deprecated in a future CUDA release. It is recommended to use tools NVIDIA Nsight Systems for GPU and CPU sampling and tracing and NVIDIA Nsight Compute for GPU kernel profiling.