No announcement yet.

Q: Test Suite Internals

  • Filter
  • Time
  • Show
Clear All
new posts

  • Q: Test Suite Internals


    I have just installed Phoronix test suite on SuSE Linux, and have several questions:

    1) Does it compile test executables like iozone, Apache, sqllite on local PC or downloads precompiled binaries from repository?
    2) Is there any way to test certain disk / mount point apart from editing user-config.xml <EnvironmentDirectory>~/.phoronix-test-suite/installed-tests/</EnvironmentDirectory>? If I change this, do I need to move entire content of phoronix stuff to a new location? IMHO, it would be better to add a new variable called for example TestDirectory, and command line option like testdir=/path/to/testdir/.
    3) Do any test needs to be run as root ?
    4) There are 2 iozone tests, one in pts and another in system. What is the difference?
    5) Does it flush caches before performing disk tests?
    6) How to properly abort test apart from ctrl-C in terminal and removing run-lock-xxxx?

    Thanks in advance !

  • #2
    Hi LinuxGuru

    1. A majority of the tests that are using tests of upstream open-source software download and build the desired version of the software and builds it locally. (This is done for more reproducibility, etc. Rather than trying to rely upon a distro's package for a test where the version might differ, distro could be carrying out of tree patches, and more universal support.)

    2. Some tests where it's exposed nicely to the test will prompt you if you want to test a desired partition/disk, such as FIO and SQLite. But for a more universal solution, simply changing the EnvironmentDirectory is the safest way for ensuring all tests are respecting that. I think I added an environment variable override already for EnvironmentDirectory. Will check and otherwise add an env var override if I didn't. You don't need to move the tests to new location as PTS otherwise will re-download/re-install the tests if needed.

    3. There's a few that need to be run as root (just a handful out of hundreds) and when that is the case it will prompt you it needs root.

    4. The pts/iozone test builds the expected iozone version specified in the test profile, etc. The system/izone test profile (and most other system/ tests) rely upon any iozone (or what's being tested) if installed on the operating system itself. So if wanting to test your distribution's packaged iozone, you would use system/iozone but if fine testing the stock, freshly-built iozone, pts/iozone is the default.

    5. Aside from what any tests may do, PTS leaves it up to the user for getting the system in their desired state for testing due to users being potentially interested in testing any number of things, so it doesn't e.g. enforce any policy about flushing caches or the like.

    6. At the moment there is just the Ctrl+C path for exiting cleanly. There are a few other ways but not easy to explain, but if you have another idea/approach, feel free to share.

    Michael Larabel