after a preliminary discussion with Philipe and, well, a few days later
than I expected, I'm starting a new effort of writting some simple (i.e. not
too complex :) yet, hopefully, useful benchmarking utilites.
The idea of each utility is to emulate a certain use case but
at the level which is significant enough to prove that
the system is (or is not) working properly latency-wise.
This, hopefully, will help to determine some bottlenecks and
the parts of code that need to be reworked/tweaked.
Then we may use such tests on release-by-release basis as indicators
of either progress or regress we are making with a certain release.
As an example, the first utility would implement the following use case :
(based on the latency program)
- a given number of periodic threads are running;
- configurable periods (so that e.g. a few threads can become active
at the same moment of time). Actually, that's what we would need.
- timer : periodic or apperiodic;
the utility will not likely produce any screen-output during its work, but
rather the comprehensive statistic in a handy form after finishing.
other utils could make use of some scenarious where synch. primitives/
rt_queue's/pipes could be highly used etc.
I guess, Xenomai already provides a valid amount of functionality and it's
quite stable for the time being. So it's time to work on optimizing it!
Everyone is wellcome to come up with any scenarios on which such utilities
could be based.
Any comments on the one with a given number of threads are wellcome too.