Commit | Line | Data |
---|---|---|
d3a684ee JR |
1 | #!/bin/bash |
2 | # | |
3 | # Copyright (C) 2020 Jonathan Rajotte-Julien <jonathan.rajotte-julien@efficios.com> | |
4 | # | |
5 | # SPDX-License-Identifier: MIT | |
6 | ||
7 | plugin_path=$(dirname "$0") | |
8 | ||
9 | DATA1="[\"duration\", \"D1\", \"performance:hit\", [\"source\", \"iteration\"], \"performance:receive\", [\"source\", \"iteration\"]]" | |
10 | ||
11 | while read -r load delay count; do | |
12 | S=$(echo "scale=3; 1 / ( $delay / 1000 )" | bc ); | |
13 | hz=${S/.000/} | |
14 | ||
15 | echo "Graphing Hz: ${hz} CPU: ${load}" | |
16 | ||
17 | PLOT1="[\"Trigger latency, Freq:${hz}Hz, CPU load: ${load}%\", \"T (ms)\", \"count\", [$DATA1]]" | |
18 | ||
19 | babeltrace2 --plugin-path="$plugin_path" --component sink.plot.PlotSink \ | |
20 | --params="histograms=[$PLOT1]" \ | |
21 | "./trace/${load}_cpuload_${delay}ms" | |
22 | done << EOF | |
23 | 0 1 10000 | |
24 | 25 1 10000 | |
25 | 50 1 10000 | |
26 | 75 1 10000 | |
27 | 100 1 10000 | |
28 | 0 10 5000 | |
29 | 25 10 5000 | |
30 | 50 10 5000 | |
31 | 75 10 5000 | |
32 | 100 10 5000 | |
33 | 0 100 6000 | |
34 | 25 100 6000 | |
35 | 50 100 6000 | |
36 | 75 100 6000 | |
37 | 100 100 6000 | |
38 | 0 1000 1500 | |
39 | 25 1000 1500 | |
40 | 50 1000 1500 | |
41 | 75 1000 1500 | |
42 | 100 1000 1500 | |
43 | 0 10000 300 | |
44 | 25 10000 300 | |
45 | 50 10000 300 | |
46 | 75 10000 300 | |
47 | 100 10000 300 | |
48 | 0 60000 50 | |
49 | 25 60000 50 | |
50 | 50 60000 50 | |
51 | 75 60000 50 | |
52 | 100 60000 50 | |
53 | EOF | |
54 | ||
55 | pdf_unite="" | |
56 | csvs="" | |
57 | # Generate united graph and base pdf list to unite | |
58 | while read -r delay ; do | |
59 | S=$(echo "scale=3; 1 / ( $delay / 1000 )" | bc ); | |
60 | hz=${S/.000/} | |
61 | hz_title=${hz/./} | |
62 | local_pdf_unite="" | |
63 | echo "Combining graphs for Hz: ${hz} hz_title: $hz_title" | |
64 | ||
65 | loggers="" | |
66 | for load in 100 75 50 25 0; do | |
67 | path=trigger-latency-freq-${hz_title}hz-cpu-load-${load}-.D1.csv | |
68 | csvs="$csvs $path" | |
69 | loggers="[\"duration-csv\", \"${load}% CPU\", \"${path}\"], $loggers" | |
70 | local_pdf_unite="${local_pdf_unite} trigger-latency-freq-${hz_title}hz-cpu-load-${load}-.pdf" | |
71 | done | |
72 | pdf_unite="$pdf_unite $local_pdf_unite" | |
73 | ||
74 | PLOT1="[\"Trigger latency, Freq:${hz}Hz\", \"T (ms)\", \"count\", [$loggers]]" | |
75 | babeltrace2 --plugin-path="$plugin_path" --component sink.plot.PlotSink \ | |
76 | --params="histograms=[$PLOT1]" \ | |
77 | "./trace/0_cpuload_${delay}ms" | |
78 | done << EOF | |
79 | 1 | |
80 | 10 | |
81 | 100 | |
82 | 1000 | |
83 | 10000 | |
84 | 60000 | |
85 | EOF | |
86 | ||
87 | # Add united graphs to the pdfunite cmd | |
88 | while read -r delay ; do | |
89 | S=$(echo "scale=3; 1 / ( $delay / 1000 )" | bc ); | |
90 | hz=${S/.000/} | |
91 | hz_title=${hz/./} | |
92 | ||
93 | pdf_unite="trigger-latency-freq-${hz_title}hz.pdf $pdf_unite" | |
94 | ||
95 | done << EOF | |
96 | 60000 | |
97 | 10000 | |
98 | 1000 | |
99 | 100 | |
100 | 10 | |
101 | 1 | |
102 | EOF | |
103 | ||
104 | rm -rf $csvs | |
105 | ||
106 | pdfunite $pdf_unite summary.pdf | |
107 |