All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yaniv Kaul <ykaul@redhat.com>
To: Bear Yang <byang@redhat.com>
Cc: Lucas Meneghel Rodrigues <mrodrigu@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	uril@redhat.com, kvm@vger.kernel.org,
	Lawrence Lim <llim@redhat.com>
Subject: Re: [KVM-AUTOTEST][PATCH] timedrift support
Date: Mon, 18 May 2009 07:20:04 +0300	[thread overview]
Message-ID: <4A10E1F4.7090902@redhat.com> (raw)
In-Reply-To: <4A10BFDF.6040405@redhat.com>

On 5/18/2009 4:54 AM, Bear Yang wrote:
> Hello Yaniv Kaul:
> I am understand your means for timedrift testcase.
> * give up using ntp to query and sync the clock from guest to host. my 
> question is below:
> 1. why we can not using the NTP staff in timedrift test case? Is there 
> some positive bugs were point on NTP or we found that something of NTP 
> definite blocked us to using it? Or could you give me what exact we 
> need give up NTP in timedrift test case?
Just another requirement from the host we do not really need. And a bit 
more hassle to configure on Windows. And who knows how to configure on 
operating system this-or-that.
>
> 2. for your  algorithm:
> MeasureHostParams() // don't forget to measure the host's CPU, memory, 
> I/O and network data - always useful.
> while (!enough)
> {
>    RunAnotherVM() // don't forget to call SleepTillVmIsFullyRunning()
>    ForEachVM // this runs in parallel on the VMs
>    {
>        before = TimeOnHost()
>        RunXMinutesLoadOnGuest(load, minutes) // load can vary - 
> synthetic CPU, I/O or 'real life' load. Can also vary from VM to VM.
>        after = TimeOnHost()
>        drift = after - before
>        If(drift >= TooMuch) // How much is too much? Could be in 
> percentage or absolute values.
>            enough = true
>    }
> }
> Why get time from host(TimeOnHost()), why?I think it should be 
> TimeOnGuest().  Could you kindly tell me the details about how to get 
> the value of before/after and drift?
I don't need to get the time on the guest. I know I've asked it to run a 
load for X minutes. The guest has run that for what it think is X 
minutes - but may be X+drift minutes - because its clock drifted. If I 
want to know by how much, I need to compare to a reliable source - the 
host (or in our case, the test server actually).
>
> 3. you suggest that the loaded is runing on host is prefer than 
> running on guest and running several guest on host to make load on 
> host. right? why? nowadays, I using the stress program which provided 
> by Lucas just running in guest.
Good, load the guest. But if the host can satisfy the guest's 
requirements, it won't be drifting (I hope!). We need to overload a bit 
here. The most natural way is with more VMs.
>
> 4. I also want to know the result that the script works on your 
> side.Maybe it is more easy to help me understand your algorithm than 
> read the script.
We'll need to run it. Haven't run it for a while actually.

Y.
>
> thanks for your explanation
>
>
> Yaniv Kaul wrote:
>> On 5/15/2009 7:30 PM, bear wrote:
>>> Good morning you all. :)
>>>
>>> Lucas:
>>> Very appreciated your help on try...except block implementation. I 
>>> am finally understand your means when I read the mail.  :(
>>>
>>> I modified the timedrift case in several place again.
>>> 1. add more comments in script.
>>> 2. functional the snippnet of script which get clock resource from 
>>> guest and host.
>>> 3. using vm.get_command_status replace the sendline API when complie 
>>> the stress program in guest area.
>>>
>>> If there is something need to be done by me for the script. feel 
>>> free just kick me.
>>>
>>> Happy weekend.
>> Hi Bear,
>>
>> Please drop the NTP stuff. There's no need for it.
>> Llet me again suggest my algorithm (pseudo-code, of course):
>>
>> MeasureHostParams() // don't forget to measure the host's CPU, 
>> memory, I/O and network data - always useful.
>> while (!enough)
>> {
>>     RunAnotherVM() // don't forget to call SleepTillVmIsFullyRunning()
>>     ForEachVM // this runs in parallel on the VMs
>>     {
>>         before = TimeOnHost()
>>         RunXMinutesLoadOnGuest(load, minutes) // load can vary - 
>> synthetic CPU, I/O or 'real life' load. Can also vary from VM to VM.
>>         after = TimeOnHost()
>>         drift = after - before
>>         If(drift >= TooMuch) // How much is too much? Could be in 
>> percentage or absolute values.
>>             enough = true
>>     }
>> }
>>
>> Simple algorithm, works for us, does not require NTP, and loads the 
>> host in the most natural way it will be loaded in real life - by more 
>> VMs.
>> Slight variations are possible. For example, use the first VM as a 
>> 'canary' VM - and measure only on it - the others can do random load; 
>> pin down VM to CPUs; vary the load, the VMs used, and the time, etc.
>>
>> HTH,
>> Y.
>> -- 
>> To unsubscribe from this list: send the line "unsubscribe kvm" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>


  reply	other threads:[~2009-05-18  4:20 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-06  4:02 [KVM-AUTOTEST][PATCH] timedrift support Bear Yang
2009-05-06 13:02 ` Marcelo Tosatti
2009-05-11 10:40   ` Bear Yang
2009-05-11 11:05     ` Yaniv Kaul
2009-05-11 12:59     ` Lucas Meneghel Rodrigues
2009-05-12 12:31       ` Bear Yang
2009-05-12 13:07         ` Bear Yang
2009-05-13 18:34           ` Lucas Meneghel Rodrigues
2009-05-15 16:30             ` bear
2009-05-16 20:36               ` Yaniv Kaul
2009-05-18  1:54                 ` Bear Yang
2009-05-18  4:20                   ` Yaniv Kaul [this message]
2009-05-18  5:18                     ` Bear Yang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4A10E1F4.7090902@redhat.com \
    --to=ykaul@redhat.com \
    --cc=byang@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=llim@redhat.com \
    --cc=mrodrigu@redhat.com \
    --cc=mtosatti@redhat.com \
    --cc=uril@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.