From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lucas Meneghel Rodrigues Subject: Re: [PATCH] KVM test: Add new subtest iozone_windows Date: Wed, 05 May 2010 07:28:31 -0300 Message-ID: <1273055311.3577.8.camel@freedom> References: <1272924196-10392-1-git-send-email-lmr@redhat.com> <4BE1459E.9090508@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Cc: autotest@test.kernel.org, jes.sorensen@redhat.com, kvm@vger.kernel.org To: Michael Goldish Return-path: In-Reply-To: <4BE1459E.9090508@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: autotest-bounces@test.kernel.org Errors-To: autotest-bounces@test.kernel.org List-Id: kvm.vger.kernel.org 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 > > --- > > 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!