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 <[email protected]>
> > ---
> > 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!
_______________________________________________
Autotest mailing list
[email protected]
http://test.kernel.org/cgi-bin/mailman/listinfo/autotest