On Wed, 2010-05-05 at 13:17 +0300, Michael Goldish wrote: > On 05/04/2010 01:03 AM, Lucas Meneghel Rodrigues wrote: > > Following the new IOzone postprocessing changes, add a new > > KVM subtest iozone_windows, which takes advantage of the > > fact that there's a windows build for the test, so we can > > ship it on winutils.iso and run it, providing this way > > the ability to track IO performance for windows guests also. > > The new test imports the postprocessing library directly > > from iozone, so it can postprocess the results right after > > the benchmark is finished on the windows guest. > > > > I'll update winutils.iso on the download page soon. > > > > Signed-off-by: Lucas Meneghel Rodrigues <lmr@xxxxxxxxxx> > > --- > > client/tests/kvm/tests/iozone_windows.py | 40 ++++++++++++++++++++++++++++++ > > client/tests/kvm/tests_base.cfg.sample | 7 ++++- > > 2 files changed, 46 insertions(+), 1 deletions(-) > > create mode 100644 client/tests/kvm/tests/iozone_windows.py > > > > diff --git a/client/tests/kvm/tests/iozone_windows.py b/client/tests/kvm/tests/iozone_windows.py > > new file mode 100644 > > index 0000000..86ec2c4 > > --- /dev/null > > +++ b/client/tests/kvm/tests/iozone_windows.py > > @@ -0,0 +1,40 @@ > > +import logging, time, os > > +from autotest_lib.client.common_lib import error > > +from autotest_lib.client.bin import utils > > +from autotest_lib.client.tests.iozone import postprocessing > > +import kvm_subprocess, kvm_test_utils, kvm_utils > > + > > + > > +def run_iozone_windows(test, params, env): > > + """ > > + Run IOzone for windows on a windows guest: > > + 1) Log into a guest > > + 2) Execute the IOzone test contained in the winutils.iso > > + 3) Get results > > + 4) Postprocess it with the IOzone postprocessing module > > + > > + @param test: kvm test object > > + @param params: Dictionary with the test parameters > > + @param env: Dictionary with test environment. > > + """ > > + vm = kvm_test_utils.get_living_vm(env, params.get("main_vm")) > > + session = kvm_test_utils.wait_for_login(vm) > > + results_path = os.path.join(test.resultsdir, > > + 'raw_output_%s' % test.iteration) > > + analysisdir = os.path.join(test.resultsdir, 'analysis_%s' % test.iteration) > > + > > + # Run IOzone and record its results > > + c = command=params.get("iozone_cmd") > > 'command=' looks unnecessary here. Funny, only realized that I left this variable now that you've mentioned :) Will fix it > > + t = int(params.get("iozone_timeout")) > > + logging.info("Running IOzone command on guest, timeout %ss", t) > > + results = session.get_command_output(command=c, timeout=t) > > Does IOzone produce any output while it's running or only when it's > done? If the former is true, we might want to print that output as it's > being produced: > > results = session.get_command_output(command=c, timeout=t, > print_func=logging.debug) Good point, it generates output while it's running, that just haven't occurred to me. Fixed all in r4467 http://autotest.kernel.org/changeset/4467 Thanks! -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html