From: Francis Deslauriers Date: Fri, 17 Feb 2017 16:43:07 +0000 (-0500) Subject: jjb: Replace open_enoent testcase for a more stable testcase X-Git-Url: https://git.lttng.org./?a=commitdiff_plain;h=70e85c9830a708869b110e4083ff04fd3bf3cb57;p=lttng-ci.git jjb: Replace open_enoent testcase for a more stable testcase The open_enoent testcase showed a bimodal distribution of time per event that was measurable even when tracing was disabled. This behaviour was witnessed only in cases where the open failed with an `enoent` error. Our investigation of the sys_open code pointed towards to the pathwalk in the VFS. We decided to simply change the test case to something more stable due to lack of time to put in the investigation. Signed-off-by: Francis Deslauriers --- diff --git a/lava/baremetal-tests/failing-open-enoent.yml b/lava/baremetal-tests/failing-open-enoent.yml deleted file mode 100644 index e02c09c..0000000 --- a/lava/baremetal-tests/failing-open-enoent.yml +++ /dev/null @@ -1,38 +0,0 @@ -metadata: - format: Lava-Test Test Definition 1.0 - name: benchmark-syscall-failing-open-enoent - description: "Perform syscall tracing benchmark of failing open-enoent" -params: - JENKINS_JOBNAME: "default jobname" - -install: - deps: - - python3-pandas - - python3-numpy - git-repos: - - url: https://github.com/frdeso/syscall-bench-it.git - destination: benchmarks - branch: master - - url: https://github.com/lttng/lttng-ci - destination: ci - branch: master - steps: - - export TMPDIR="/tmp" - - ulimit -c unlimited - - mkdir -p coredump - - echo "$(pwd)/coredump/core.%e.%p.%h.%t" > /proc/sys/kernel/core_pattern -run: - steps: - - source /root/lttngvenv/activate - - cd benchmarks - - lava-test-case build-benchmarks --shell "make" - - lava-test-case run-benchmarks --shell "./run.sh failing-open-enoent" - - lava-test-case-attach run-benchmarks "./results.csv" - - cd - - - cd ci - - python3 ./scripts/lttng-baremetal-tests/parse-results.py ../benchmarks/results.csv - - mv ./processed_results.csv ../processed_results_open_enoent.csv - - cd - - - tar czf coredump.tar.gz coredump - - lava-test-case-attach run-benchmarks coredump.tar.gz - - lava-test-case-attach run-benchmarks "./processed_results_open_enoent.csv" diff --git a/lava/baremetal-tests/success-dup-close.yml b/lava/baremetal-tests/success-dup-close.yml new file mode 100644 index 0000000..a3128c8 --- /dev/null +++ b/lava/baremetal-tests/success-dup-close.yml @@ -0,0 +1,38 @@ +metadata: + format: Lava-Test Test Definition 1.0 + name: benchmark-syscall-success-dup-close + description: "Perform syscall tracing benchmark of failing open-enoent" +params: + JENKINS_JOBNAME: "default jobname" + +install: + deps: + - python3-pandas + - python3-numpy + git-repos: + - url: https://github.com/frdeso/syscall-bench-it.git + destination: benchmarks + branch: master + - url: https://github.com/lttng/lttng-ci + destination: ci + branch: master + steps: + - export TMPDIR="/tmp" + - ulimit -c unlimited + - mkdir -p coredump + - echo "$(pwd)/coredump/core.%e.%p.%h.%t" > /proc/sys/kernel/core_pattern +run: + steps: + - source /root/lttngvenv/activate + - cd benchmarks + - lava-test-case build-benchmarks --shell "make" + - lava-test-case run-benchmarks --shell "./run.sh success-dup-close" + - lava-test-case-attach run-benchmarks "./results.csv" + - cd - + - cd ci + - python3 ./scripts/lttng-baremetal-tests/parse-results.py ../benchmarks/results.csv + - mv ./processed_results.csv ../processed_results_dup_close.csv + - cd - + - tar czf coredump.tar.gz coredump + - lava-test-case-attach run-benchmarks coredump.tar.gz + - lava-test-case-attach run-benchmarks "./processed_results_dup_close.csv" diff --git a/scripts/lttng-baremetal-tests/lava-submit.py b/scripts/lttng-baremetal-tests/lava-submit.py index 77abff9..391cda3 100644 --- a/scripts/lttng-baremetal-tests/lava-submit.py +++ b/scripts/lttng-baremetal-tests/lava-submit.py @@ -70,7 +70,9 @@ def check_job_all_test_cases_state_count(server, job): # save them as CSV files localy def fetch_benchmark_results(server, job): content = get_job_bundle_content(server, job) - testcases = ['processed_results_close.csv', 'processed_results_open_enoent.csv', 'processed_results_open_efault.csv'] + testcases = ['processed_results_close.csv', + 'processed_results_open_efault.csv', + 'processed_results_dup_close.csv'] # The result bundle is a large JSON containing the results of every testcase # of the LAVA job as well as the files that were attached during the run. @@ -195,7 +197,7 @@ def get_baremetal_benchmarks_cmd(): { 'git-repo': 'https://github.com/lttng/lttng-ci.git', 'revision': 'master', - 'testdef': 'lava/baremetal-tests/failing-open-enoent.yml' + 'testdef': 'lava/baremetal-tests/success-dup-close.yml' } ], 'timeout': 18000 diff --git a/scripts/lttng-baremetal-tests/run-baremetal-benchmarks.sh b/scripts/lttng-baremetal-tests/run-baremetal-benchmarks.sh index 0c722ae..663582f 100644 --- a/scripts/lttng-baremetal-tests/run-baremetal-benchmarks.sh +++ b/scripts/lttng-baremetal-tests/run-baremetal-benchmarks.sh @@ -37,5 +37,5 @@ echo "$BUILD_NUMBER,$KERNEL_COMMIT_ID,$LTTNG_MODULES_COMMIT_ID,$LTTNG_TOOLS_COMM # Copy the result files for each benchmark and metadata on storage server $SCP_COMMAND ./processed_results_close.csv "$STORAGE_USER@$STORAGE_HOST:$RESULT_STORAGE_FOLDER/close.csv" $SCP_COMMAND ./processed_results_open_efault.csv "$STORAGE_USER@$STORAGE_HOST:$RESULT_STORAGE_FOLDER/open-efault.csv" -$SCP_COMMAND ./processed_results_open_enoent.csv "$STORAGE_USER@$STORAGE_HOST:$RESULT_STORAGE_FOLDER/open-enoent.csv" +$SCP_COMMAND ./processed_results_dup_close.csv "$STORAGE_USER@$STORAGE_HOST:$RESULT_STORAGE_FOLDER/dup-close.csv" $SCP_COMMAND ./metadata.csv "$STORAGE_USER@$STORAGE_HOST:$RESULT_STORAGE_FOLDER/metadata.csv"