diff mbox series

[5/5] rteval: Remove 30 second "settling" period

Message ID 20240304211655.20174-6-crwood@redhat.com
State New
Headers show
Series rteval: Fixes and speedups | expand

Commit Message

Crystal Wood March 4, 2024, 9:16 p.m. UTC
Waiting for 30 seconds for loads to "settle down" adds unneccesary delay
to very short runs, besides being a giant hack.  Load modules already
have the opportunity to do setup beforehand.

Even if there are a few seconds before the loads get to their expected
"heaviness", that shouldn't meaningfully affect the output except for:
 - very short runs where you either
   - don't care about the latency because you're debugging rteval itself, or
   - are debugging a latency that reliably shows quickly, in which case
     consistent behavior is enough
 - latency spikes that only show up during load startup activity, in
   which case measuring it is a good thing
 - minimum latency values, which are not really the point of rteval.

...and the 30 second delay is *especially* useless if loads are disabled.
Currently there's no official way to do that (as far as I can find), but
it can be done by disabling all but stressng in the conf file, and not
supplying stressng options on the command line.

Signed-off-by: Crystal Wood <crwood@redhat.com>
---
 rteval/__init__.py | 2 --
 1 file changed, 2 deletions(-)

Comments

John Kacur April 2, 2024, 8:52 p.m. UTC | #1
On Mon, 4 Mar 2024, Crystal Wood wrote:

> Waiting for 30 seconds for loads to "settle down" adds unneccesary delay
> to very short runs, besides being a giant hack.  Load modules already
> have the opportunity to do setup beforehand.
> 
> Even if there are a few seconds before the loads get to their expected
> "heaviness", that shouldn't meaningfully affect the output except for:
>  - very short runs where you either
>    - don't care about the latency because you're debugging rteval itself, or
>    - are debugging a latency that reliably shows quickly, in which case
>      consistent behavior is enough
>  - latency spikes that only show up during load startup activity, in
>    which case measuring it is a good thing
>  - minimum latency values, which are not really the point of rteval.
> 
> ...and the 30 second delay is *especially* useless if loads are disabled.
> Currently there's no official way to do that (as far as I can find), but
> it can be done by disabling all but stressng in the conf file, and not
> supplying stressng options on the command line.
> 
> Signed-off-by: Crystal Wood <crwood@redhat.com>
> ---
>  rteval/__init__.py | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/rteval/__init__.py b/rteval/__init__.py
> index 72e3412a860e..2c1dc1a7a22c 100644
> --- a/rteval/__init__.py
> +++ b/rteval/__init__.py
> @@ -194,8 +194,6 @@ class RtEval(rtevalReport):
>                  nthreads = threading.active_count()
>              else:
>                  nthreads = None
> -            self.__logger.log(Log.INFO, "Waiting 30 seconds to let load modules settle down")
> -            time.sleep(30)
>              measure_profile.Unleash()
>              measure_start = datetime.now()
>  
> -- 

kludge begone!
Signed-off-by: John Kacur <jkacur@redhat.com>
diff mbox series

Patch

diff --git a/rteval/__init__.py b/rteval/__init__.py
index 72e3412a860e..2c1dc1a7a22c 100644
--- a/rteval/__init__.py
+++ b/rteval/__init__.py
@@ -194,8 +194,6 @@  class RtEval(rtevalReport):
                 nthreads = threading.active_count()
             else:
                 nthreads = None
-            self.__logger.log(Log.INFO, "Waiting 30 seconds to let load modules settle down")
-            time.sleep(30)
             measure_profile.Unleash()
             measure_start = datetime.now()