| 1 | metadata: |
| 2 | format: Lava-Test Test Definition 1.0 |
| 3 | name: benchmark-raw-syscall-getpid |
| 4 | description: "Perform syscall tracing benchmark of the raw syscall getpid" |
| 5 | params: |
| 6 | JENKINS_BUILD_ID: "invalid_jenkins_build_id" |
| 7 | run: |
| 8 | steps: |
| 9 | - apt install -y python3-pandas python3-numpy |
| 10 | - git clone https://github.com/lttng/lttng-ci ci |
| 11 | - export TMPDIR="/tmp" |
| 12 | - mkdir -p coredump |
| 13 | - echo "$(pwd)/coredump/core.%e.%p.%h.%t" > /proc/sys/kernel/core_pattern |
| 14 | - ulimit -c unlimited |
| 15 | - source /root/lttngvenv/activate |
| 16 | - export BENCHMARK_DIR=$(mktemp --directory)/bm |
| 17 | - git clone https://github.com/frdeso/syscall-bench-it.git $BENCHMARK_DIR |
| 18 | - pushd $BENCHMARK_DIR |
| 19 | - lava-test-case build-benchmarks --shell "make" |
| 20 | - lava-test-case run-benchmarks --shell "./run.sh raw-syscall-getpid sys_getpid" |
| 21 | - popd |
| 22 | - python3 ./ci/scripts/system-tests/parse-results.py $BENCHMARK_DIR/results.csv |
| 23 | - mv ./processed_results.csv ./processed_results_raw_syscall_getpid.csv |
| 24 | - tar czf coredump.tar.gz coredump |
| 25 | - ./ci/lava/upload_artifact.sh coredump.tar.gz "results/${JENKINS_BUILD_ID}/${TESTRUN_ID}-coredump.tar.gz" |
| 26 | - ./ci/lava/upload_artifact.sh "${BENCHMARK_DIR}/results.csv" "results/${JENKINS_BUILD_ID}/results_raw_syscall_getpid.csv" |
| 27 | - ./ci/lava/upload_artifact.sh processed_results_raw_syscall_getpid.csv "results/${JENKINS_BUILD_ID}/processed_results_raw_syscall_getpid.csv" |