intel / lkp-tests

Linux Kernel Performance tests
GNU General Public License v2.0
251 stars 153 forks source link

How to quickly run tests on local system? #372

Closed paulmenzel closed 3 months ago

paulmenzel commented 3 months ago

Thank you for Linux Kernel Performance tests.

For people, like administrators, getting their hands on hardware for a short time, how can they install and run all (“useful”) the tests this device?

I am currently trying:

$ for j in jobs/*; do sudo lkp split-job "$j"; done
$ for j in *.yaml; do sudo lkp install "$j"; sudo lke run "$j"; done
rli9 commented 3 months ago

Usually for one test suite, it only need lkp install once for any of its job yamls. You can try below with 2 rounds of lkp split-job as a quick way. More complex way can be to only pick one yaml for any test suite to further speed up during lkp install phase.

# use any to generate one yaml only
$ for j in jobs/*; do sudo lkp split-job --any "$j"; done
$ for j in *.yaml; do sudo lkp install "$j"; done
$ for j in jobs/*; do sudo lkp split-job "$j"; done
$ for j in *.yaml; do sudo lke run "$j"; done 
paulmenzel commented 3 months ago

Thank you. One test already failed due to an out-of-memory (OOM) situation. Can you recommend a subset, that should be run. Or is LKP tests just not for this use case, and I should be looking somewhere else? I guess, I wanted to run some boot/suspend tests and look for warnings and errors in the Linux logs to make sure the hardware is fully supported.

rli9 commented 3 months ago

r is LKP tests just not for this use case, and I should be looking somewhere else?

Right, it is not suitable to run all tests.

lkp-tests simplifies the install/execution of various tests in an uniformed way and it also provides tool to do performance analysis. For your own test purpose, it is recommended to pick up interested tests that are suitable for your code changes. For example, to test scheduler change, hackbench, schbench could be considered.

For suspend related tests, you can choose suspend*.yaml. For boot, boot.yaml can be tried but since it actually boots the machine, you may try vm if needed.

paulmenzel commented 3 months ago

Thank you for clearing this up. This is already to complicated for my use case (and other administrators I guess), that get their hands on a device for a day or so before provisioning it for production use.