Would it be possible to measure memory traffic using nvprof, or any other way, for my Tx1/Tx2 opencv application ? I think I’m missing the right option for that ? Would it be possible to measure memory read traffic and write traffic separately ?
We have more tool to check allocated memory amount.
Ex, tegrastats, cudaMemGetInfo.
You can calculate bandwidth by combining the information execution time.
Please check this sample for details:
If you are looking for the L1/L2 cache information, please check TegraSystemProfiler.
TegraSystemProfiler can be download via JetPack directly.
Thanks for the pointer. I started learning up TegraSystemProfiler.
I could not find an option in TegraSystemProfiler where I can measure DDR read traffic and DDR write traffic. Could you please help ?
My intention is to measure how many frames my opencv/gstreamer application is reading and writing (per second) ? Please not that my application does not use any CUDA kernel yet. I would simply like to get an estimate of bytes read and bytes written from/to DDR on per second basis.
TegraSystemProfiler can record cache miss information, but it can’t record memory traffic.
System profiling options > Collect PMU counters > L1 caches misses: read
We have another profiling tool that can measure Graphics memory(via GL/EGL) traffic.
But this tool can only record the traffic go through the GL/EGL API.
In your use-case,
It’s recommended to find some third-party application that can monitor memory traffic on Ubuntu.
Thanks and hope this help.