From 742a19948f0e8c90bb63054309ca3a0f4d4dec31 Mon Sep 17 00:00:00 2001 From: Tvrtko Ursulin Date: Fri, 11 May 2018 11:06:14 +0100 Subject: media-bench: Write out trace files directly. Instead of relying on shell redirection. Signed-off-by: Tvrtko Ursulin Acked-by: Chris Wilson --- scripts/media-bench.pl | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) (limited to 'scripts') diff --git a/scripts/media-bench.pl b/scripts/media-bench.pl index 9bf8c878..77e75c78 100755 --- a/scripts/media-bench.pl +++ b/scripts/media-bench.pl @@ -162,6 +162,21 @@ sub run_workload return ($time, $wps); } +sub dump_cmd +{ + my ($cmd, $file) = @_; + + show_cmd("$cmd > $file"); + + open FOUT, '>', $file or die; + open TIN, "$cmd |" or die; + while () { + print FOUT $_; + } + close TIN; + close FOUT; +} + sub trace_workload { my ($wrk, $b, $r, $c) = @_; @@ -212,15 +227,12 @@ sub trace_workload $b =~ s/[ <>]/_/g; $file = "${wrk}_${b}_-r${r}_-c${c}"; - $cmd = "perf script > ${file}.trace"; - show_cmd($cmd); - system($cmd) == 0 or die; + dump_cmd('perf script', "${file}.trace"); $cmd = "perf script | $tracepl --html -x ctxsave -s -c "; $cmd .= join ' ', map("-i $_", @skip_engine); - $cmd .= " > ${file}.html"; - show_cmd($cmd); - system($cmd) == 0 or die; + + dump_cmd($cmd, "${file}.html"); return \%engines; } -- cgit v1.2.3