rocprofiler icon indicating copy to clipboard operation
rocprofiler copied to clipboard

Tool for reading CSV files?

Open JohannesGaessler opened this issue 1 year ago • 1 comments

I used rocprofv2 to generate a CSV file with information about the kernels. However, navigating this CSV file with default spreadsheet software is kind of tedious. Is this the intended use? Is there another tool that is intended to be used here? In either case, I think this should be clarified in the README.

JohannesGaessler avatar Jan 11 '24 13:01 JohannesGaessler

We've experimented with the Pandas Python package, which may be useful to explore output from rocprofiler.

  • https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_csv.html

Note that it is also used in e.g. the Hatchet package that has readers for outputs from other ROCm tools such as omnitrace.

maartenarnst avatar Feb 20 '24 09:02 maartenarnst

@JohannesGaessler Were you able to resolve your issue? If not, let us know and we will look into other options to assist you. Thanks!

ppanchad-amd avatar Aug 28 '24 20:08 ppanchad-amd

Context: I am one of the developers of llama.cpp (large language model inference) and I was trying to figure out why the AMD performance of some CUDA code ported via HIP was bad. In the end I decided to just not enable the code for AMD at all because supporting it was too much work. I still do not know how to profile my code for AMD GPUs.

JohannesGaessler avatar Aug 28 '24 20:08 JohannesGaessler

Hi @JohannesGaessler, Internal ticket has been created to assist with your issue. Thanks!

ppanchad-amd avatar Aug 29 '24 14:08 ppanchad-amd

Hi @JohannesGaessler, there are various tools available to explore the csv output, but it sounds like csv output does not fit your workflow. rocprofiler supports various output formats through a plugin system; for example, --plugin perfetto generates output which can be visualized in the Perfetto UI. You can find the documentation in the README as well as here. There are several built-in plugins corresponding to common profiling workflows, and rocprofiler also supports custom plugins if none of the built-ins are compatible with your visualization tool of choice. Let me know if this is insufficient for your needs.

schung-amd avatar Sep 04 '24 15:09 schung-amd

@JohannesGaessler use the new rocprofv3 released in ROCm 6.2 with LLAMA. rocprofv1 and rocprofv2 were built on our tooling libraries which were not robust nor well tested, we’ve rectified that with the new rocprofv3 built on top of the new rocprofiler-sdk tooling library.

jrmadsen avatar Sep 04 '24 22:09 jrmadsen

Thanks, I'll keep the recommendations in mind when I revisit the code.

JohannesGaessler avatar Sep 05 '24 10:09 JohannesGaessler

I'm closing this for now, feel free to reopen it or open a new issue when you revisit your code if the advice given does not suit your needs.

schung-amd avatar Sep 05 '24 13:09 schung-amd