Without this patch, intel_gpu_top will try to get access to the hardware
after running the profiling command in the background. In case such access
fails, the main process quits, but the background one will continue
running.
So let's move this test up, so it is done before we fork.
Signed-off-by: Eugeni Dodonov <eugeni.dodonov@intel.com>
This patch adds support for running intel_gpu_top to profile specific
commands. The required command will be carried out in separate process,
and main intel_gpu_top will leave when the child process will exit.
Signed-off-by: Eugeni Dodonov <eugeni.dodonov@intel.com>
This patch adds support for non-interactive mode, invoked by running with
'-o output' switch. In this case, no interactive output is being
performed, but the execution statistics are being saved into the output
file.
The output file is generated in both human and gnuplot-readable format.
Unlike interactive mode, where non-supported pipes and non-active
registers are skipped, the content of such pipes and registers is recorded
into the log file to simplify parsing and standardize the list of columns.
Also, unlike interactive mode, the registers are not sorted according to
the usage - this way, their variation over time can be analysed offline.
Signed-off-by: Eugeni Dodonov <eugeni.dodonov@intel.com>
the monitoring itself. This way, the first measure will already contain
the difference from the previous value instead of non-initialized value.
Signed-off-by: Eugeni Dodonov <eugeni.dodonov@intel.com>
This patch initializes the last_stats[] for registers prior to starting
the monitoring itself. This way, the first measure will already contain
the difference from the previous value instead of non-initialized value.
Signed-off-by: Eugeni Dodonov <eugeni.dodonov@intel.com>
This patch adds initial support for non-stdio output, to be used for
non-interactive monitoring.
Signed-off-by: Eugeni Dodonov <eugeni.dodonov@intel.com>
second
This patch adds support for getopt, and adds two default parameters to it:
-h to show usage notes; and -s to allow user to define number of samples
to acquire per second.
Manpage documentation is also adjusted accordingly.
Signed-off-by: Eugeni Dodonov <eugeni.dodonov@intel.com>
This allows intel_gpu_top to properly account for time spent inside system
calls. Effectively, with previous implementation, intel_gpu_top could
spent longer than 1s between consecutive measures. This attempts to
minimize the extra time spent while polling for data.
Signed-off-by: Eugeni Dodonov <eugeni.dodonov@intel.com>
This app is required for debug features which seem to (undocumented)
reset themselves if/when the GT goes to sleep.
It is also useful for those doing general debugging or profiling from
userspace when they do not wish to have the GT sleep.
v2: made forcewaked more daemon-like
Cc: Chris Wilson <chris@chris-wilson.co.uk>
The decode for A8 is incomplete and died with a segfault. First hide the
segfault, latter fix the pretty printing.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Some versions of libpciaccess on Linux set rom_size to 0 for VGA
devices. While this behavior may change, intel_bios_dumper should
handle this situation to be compatible with current versions of the
library.
This fixes segmentation faults on affected systems.
Signed-off-by: Forest Bond <forest.bond@rapidrollout.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
intel_bios_reader.c: In function ‘dump_backlight_info’:
intel_bios_reader.c:192:22: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘unsigned int’ [-Wformat]
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
intel_disable_clock_gating.c: In function ‘main’:
intel_disable_clock_gating.c:38:11: warning: unused variable ‘temp’ [-Wunused-variable]
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
It has been supersede by intel_error_decode for the user-facing role of
obtaining debug info after a crash.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
The maximum filename is limited so we can simply use a large buffer
rather than fail to check the error return from asprintf.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Stops the compiler warning about not checking the potential error return
from asprintf, which was a false positive anyway.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This is vital in a multi-GPU system so that we only test the Intel card
and not the discrete GPUs.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>