1#!/usr/bin/bash 2 3# sudo apt-get install linux-headers-$(uname -r) "llvm-13*" libclang-13-dev luajit luajit-5.1-dev libelf-dev python3-setuptools libdebuginfod-dev arping netperf iperf 4# mkdir -p build && cd build 5# cmake .. -DPYTHON_CMD=python3 6# make -j4 7# sudo make install 8 9gcc --version 10rm -rf examples/usdt_sample/build_gcc 11mkdir -p examples/usdt_sample/build_gcc && pushd examples/usdt_sample/build_gcc 12cmake .. 13make 14popd 15 16# sudo dnf install systemtap-sdt-dev # For Ubuntu 21.10, other distro's might have differently named packages. 17# dtrace -h -s usdt_sample_lib1/src/lib1_sdt.d -o usdt_sample_lib1/include/usdt_sample_lib1/lib1_sdt.h 18# dtrace -G -s usdt_sample_lib1/src/lib1_sdt.d -o lib1_sdt.o 19 20python3 tools/tplist.py -l examples/usdt_sample/build_gcc/usdt_sample_lib1/libusdt_sample_lib1.so 21readelf -n examples/usdt_sample/build_gcc/usdt_sample_lib1/libusdt_sample_lib1.so 22 23examples/usdt_sample/build_gcc/usdt_sample_app1/usdt_sample_app1 "usdt" 1 30 10 1 50 & 24pid=$! 25 26echo "argdist.py - Using non-sdt probes" 27sudo python3 tools/argdist.py -p ${pid} -i 5 -C "u:$(pwd)/examples/usdt_sample/build_gcc/usdt_sample_lib1/libusdt_sample_lib1.so:operation_start():char*:arg2#input" -z 32 & 28sleep 30 29sudo pkill -f "\\-p.${pid}" 30echo "argdist.py - Using sdt probes" 31sudo python3 tools/argdist.py -p ${pid} -i 5 -C "u:$(pwd)/examples/usdt_sample/build_gcc/usdt_sample_lib1/libusdt_sample_lib1.so:operation_start_sdt():char*:arg2#input" -z 32 & 32sleep 30 33sudo pkill -f "\\-p.${pid}" 34sudo python3 examples/usdt_sample/scripts/latency.py -p=${pid} -f="usdt_20" & 35sleep 30 36sudo pkill -f "\\-p.${pid}" 37sudo python3 examples/usdt_sample/scripts/latency.py -p=${pid} -f="usdt_20" -s & 38sleep 30 39sudo pkill -f "\\-p.${pid}" 40sudo python3 examples/usdt_sample/scripts/lat_dist.py -p=${pid} -i=5 -f="usdt_20" & 41sleep 30 42sudo pkill -f "\\-p.${pid}" 43sudo python3 examples/usdt_sample/scripts/lat_dist.py -p=${pid} -i=5 -f="usdt_20" -s & 44sleep 30 45sudo pkill -f "\\-p.${pid}" 46sudo python3 examples/usdt_sample/scripts/lat_avg.py -p=${pid} -i=5 -c=10 -f="usdt_20" & 47sleep 30 48sudo pkill -f "\\-p.${pid}" 49sudo python3 examples/usdt_sample/scripts/lat_avg.py -p=${pid} -i=5 -c=10 -f="usdt_20" -s & 50sleep 30 51sudo pkill -f "\\-p.${pid}" 52 53sudo pkill -f "examples/usdt_sample/build_.*/usdt_sample_app1/usdt_sample_app1" 54 55clang --version 56rm -rf examples/usdt_sample/build_clang 57mkdir -p examples/usdt_sample/build_clang && pushd examples/usdt_sample/build_clang 58cmake .. -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ 59make 60popd 61 62python3 tools/tplist.py -l examples/usdt_sample/build_clang/usdt_sample_lib1/libusdt_sample_lib1.so 63readelf -n examples/usdt_sample/build_clang/usdt_sample_lib1/libusdt_sample_lib1.so 64 65examples/usdt_sample/build_clang/usdt_sample_app1/usdt_sample_app1 "usdt" 1 30 10 1 50 & 66pid=$! 67 68echo "argdist.py - Using non-sdt probes" 69sudo python3 tools/argdist.py -p ${pid} -i 5 -C "u:$(pwd)/examples/usdt_sample/build_clang/usdt_sample_lib1/libusdt_sample_lib1.so:operation_start():char*:arg2#input" -z 32 & 70sleep 30 71sudo pkill -f "\\-p.${pid}" 72echo "argdist.py - Using sdt probes" 73sudo python3 tools/argdist.py -p ${pid} -i 5 -C "u:$(pwd)/examples/usdt_sample/build_clang/usdt_sample_lib1/libusdt_sample_lib1.so:operation_start_sdt():char*:arg2#input" -z 32 & 74sleep 30 75sudo pkill -f "\\-p.${pid}" 76sudo python3 examples/usdt_sample/scripts/latency.py -p=${pid} -f="usdt_20" & 77sleep 30 78sudo pkill -f "\\-p.${pid}" 79sudo python3 examples/usdt_sample/scripts/latency.py -p=${pid} -f="usdt_20" -s & 80sleep 30 81sudo pkill -f "\\-p.${pid}" 82sudo python3 examples/usdt_sample/scripts/lat_dist.py -p=${pid} -i=5 -f="usdt_20" & 83sleep 30 84sudo pkill -f "\\-p.${pid}" 85sudo python3 examples/usdt_sample/scripts/lat_dist.py -p=${pid} -i=5 -f="usdt_20" -s & 86sleep 30 87sudo pkill -f "\\-p.${pid}" 88sudo python3 examples/usdt_sample/scripts/lat_avg.py -p=${pid} -i=5 -c=10 -f="usdt_20" & 89sleep 30 90sudo pkill -f "\\-p.${pid}" 91sudo python3 examples/usdt_sample/scripts/lat_avg.py -p=${pid} -i=5 -c=10 -f="usdt_20" -s & 92sleep 30 93sudo pkill -f "\\-p.${pid}" 94 95sudo pkill -f "examples/usdt_sample/build_.*/usdt_sample_app1/usdt_sample_app1" 96