NVPROF power consumption

I am currently trying to profile running GAN layers in the GPU. I noticed that when I use NVPROF to get measurements, the time to execution is substantially longer and GPU power usage goes up by 1 Watt or so. Is this an expected behavior?

Power output profiler :

let POWER=$(cat /sys/bus/i2c/drivers/ina3221x/6-0040/iio:device0/in_current1_input)

Running without NVPROF:

$ python3 pytorchfile.py

Power (in mW):
165
163
326
204
245
245
245
243

Running with NVPROF

sudo /usr/local/cuda-10.0/bin/nvprof --metrics achieved_occupancy,ipc,l2_read_throughput,l2_write_throughput,sm_efficiency,flop_count_dp,flop_count_dp_add,flop_count_dp_fma,flop_count_dp_mul,flop_count_hp,flop_count_hp_add,flop_count_hp_fma,flop_count_hp_mul,flop_count_sp,flop_count_sp_add,flop_count_sp_fma,flop_count_sp_mul,flop_count_sp_special,flop_dp_efficiency,flop_hp_efficiency,flop_sp_efficiency python3 pytorchFile.py

Power (in mW):
165
1610
1610
1572
1610
1607
1607
1597
1610
1607
1607
1607
1610
1607
1607
1597
1612
1607
1607
1607
1607
1607
1607
1607
1607
1607
1607
1607
1607
1605
1607
1610
165

Hi,

You can find the profile overhead if display the nvprof data with visual profiler on host.
https://docs.nvidia.com/cuda/profiler-users-guide/index.html#timeline-view

Profiling Overhead
A timeline will contain a single Profiling Overhead row for each process. Each interval in the row represents the duration of execution of some activity required for profiling. These intervals represent activity that does not occur when the application is not being profiled.

Could you give it a try and measure the profiling overhead for us?
Thanks.