ROCm / rocprofiler-compute

Advanced Profiling and Analytics for AMD Hardware
https://rocm.docs.amd.com/projects/omniperf/en/latest/
MIT License
135 stars 49 forks source link

Kernel filtering with Omniperf profile in MI300X #339

Closed Jacob0226 closed 6 months ago

Jacob0226 commented 7 months ago

Describe the bug In the issue 325, it seems that you can use rocprofv1 to choose the kernels that are being profiled. But on the MI300X machine with gfx942, gfx942 only works with rocprofv2. gfx942 is not enabled in rocprofv1. When I use rocprofv2 and -k in omniperf, the kernels are not filtered. omniperf profile all of the kernels.

Development Environment:

To Reproduce Steps to reproduce the behavior:

  1. Download sample code vcopy.cpp
    hipcc vcopy.cpp -o vcopy
    export ROCPROF=/opt/rocm-6.1.0-13394/bin/rocprof
    omniperf profile -n vcopy_kernel -k vecCopy -- ./vcopy -n 1048576 -b 256

Expected behavior It pops out an error:

ERROR gfx942 is not enabled in rocprofv1. Available profilers include: ['rocprofv2']

I have tried with rocprofv2, it would profile all kernels and that is not what I want.

coleramos425 commented 6 months ago

ERROR gfx942 is not enabled in rocprofv1. Available profilers include: ['rocprofv2']

Right. This error is to be expected since rocprofv1 does not have compatibility with MI300. This seems to be the same issue as reported in #325 which we found is a bug in rocprofv2, not Omniperf. If you feel this is not a duplicate issue, please re-open.