Even I run the exactly same program, the profiling time varies a lot.
Let’s say I run 10 times, 6 times is 80 ms, 4 times is 130 ms.
About my program, there are main thread and 1 extra thread created by myself.
I have already set TX2 to maximum performance, which means all 6 cores should be active.
Even explicitly I only two threads in program, but when I open the system monitor, I can see 6 cores are running actively.
Tx2 ha 6 GPU cores(4 A57 cores and 2 denver cores), mostly 1 denver core runs to around 90%-100%, all other cores runs about 30%. But each time, it’s a little different, sometimes denver core 1 runs to high usage, sometimes denver core 2. I can’t really find the patterns between 6 cores and profiling time.
Is there any method I can do like manipulating CPUs allocation to make sure the profiling time is always 80 ms, using the fastest mode in condition that I have already set it to maximum performance(sudo nvpmodel -m 0)