SoW-2019-0002: Dynamic Snapshot
[lttng-tools.git] / doc / examples / trigger-on-event / performance / generate-graph.sh
CommitLineData
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
7plugin_path=$(dirname "$0")
8
9DATA1="[\"duration\", \"D1\", \"performance:hit\", [\"source\", \"iteration\"], \"performance:receive\", [\"source\", \"iteration\"]]"
10
11while 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"
22done << EOF
230 1 10000
2425 1 10000
2550 1 10000
2675 1 10000
27100 1 10000
280 10 5000
2925 10 5000
3050 10 5000
3175 10 5000
32100 10 5000
330 100 6000
3425 100 6000
3550 100 6000
3675 100 6000
37100 100 6000
380 1000 1500
3925 1000 1500
4050 1000 1500
4175 1000 1500
42100 1000 1500
430 10000 300
4425 10000 300
4550 10000 300
4675 10000 300
47100 10000 300
480 60000 50
4925 60000 50
5050 60000 50
5175 60000 50
52100 60000 50
53EOF
54
55pdf_unite=""
56csvs=""
57# Generate united graph and base pdf list to unite
58while 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"
78done << EOF
791
8010
81100
821000
8310000
8460000
85EOF
86
87# Add united graphs to the pdfunite cmd
88while 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
95done << EOF
9660000
9710000
981000
99100
10010
1011
102EOF
103
104rm -rf $csvs
105
106pdfunite $pdf_unite summary.pdf
107
This page took 0.028565 seconds and 5 git commands to generate.