Re: [PATCH] rteval: Allow configuration from stdin

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Tue, 14 Jan 2025, Crystal Wood wrote:

> On Tue, 2025-01-14 at 07:40 +0100, Gabriele Monaco wrote:
> > On Mon, 2025-01-13 at 16:34 -0500, John Kacur wrote:
> > > 
> > > 
> > > On Mon, 13 Jan 2025, Gabriele Monaco wrote:
> > > 
> > > > Modules can currently be set only via configuration file, if rteval
> > > > is
> > > > called from a script run on different systems, the only way to make
> > > > sure
> > > > the loaded modules are known is to provide (or generate) a
> > > > configuration
> > > > file and pass it via -f/--infile .
> > > 
> > > The config files are almost obsolete.
> > > Everything has a reasonable default, or can be set from the CMI
> > > The one exception is for the measurement module.
> > > 
> > > What would be useful would be a CMI interface to switch from rtla
> > > timerlat
> > > to cyclictest.
> > > 
> > 
> > Mmh, that was actually my first idea, something like --measurement-
> > modules=timerlat,cyclictest --loads-modules=hackbench
> > Basically behaving just like the measurement and loads sections in the
> > config.
> > 
> > I opted for this as it was simpler but if the config file is getting
> > obsolete, I think you can just ignore the patch.
> 
> It's a simple enough patch that it might be worth taking anyway...
> unless we actually do want to deprecate the config file entirely, rather
> than just making sure it's not the only place where certain things can
> be configured.

I'm tending in the direction of deprecating the config file, I don't find 
it too useful. In any case, I don't want to add to it, we will then end up 
having to maintain that.

> 
> > 
> > I could start drafting a patch for the CLI options to specify modules
> > if they look alright to you.
> > 
> > Another not too different option could be kinda like stress-ng,
> > specifying the modules just like --cyclictest , --timerlat , --
> > hackbench , etc.
> 
> It fits the pattern of module-specific parameters, so I kind of like it
> from an interface perspective.  Implementation wise, though, something
> like
> --load-modules='cyclictest,sysstat' or --load cyclictest --load sysstat
> might be easier (interface wise, I prefer the latter).
> 

Note that cyclictest and timerlat in rteval jargon are measurement modules
The current way that load modules work is that most are implicitly 
implied. stress-ng is not among the default implicitly implied load 
modules, but if you choose stressng-option then it sets itself as
an exclusive load module and turns off the others. If a person tries to 
run with a stressng-option and an option for an other load module, it is 
an error condition.

It is possible to run both the cyclictest and timerlat measurement modules 
without using any specific cyclictest or timerlat options. (so that 
doesn't work as a way to differentiate)

There are some measurement module options that will apply to either one.
For example 
--measurement-cpulist CPULIST

will run measurement modules on the CPULIST whether that be cyclictest or 
timerlat.

I think the simplest thing to do would be to implement these two options 
without parameters.
--cyclictest
--timerlat

Now, you wouldn't HAVE to use them, currently timerlat is the default, so 
if you don't specify, then it would use the default.

Like with stress-ng and the load modules, if a person tried to use a 
cyclictest and a timerlat option at the sametime, it should create an 
error and exit.

I like the above idea, because other than the optional option of 
--cyclictest and --timerlat, nothing else changes, so it wouldn't break 
anybody's scripts in any kind of major way.

John

> > 
> > Both would require a bit of refactoring how we load modules.
> 
> That could be a good thing, if the new way is simpler.
> 
> -Crystal
> 
> 
> 

[Index of Archives]     [RT Stable]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux