On 19/06/15 11:22, Alexandros Frantzis wrote:
> Hello all,
>
> there have recently been a few occasions where we wanted to experiment with
> performance improvements, but lacked a way to easily measure their effect.
> There have also been a few occasions where different implementations of the
> (supposedly) same performance test came up with different results. In light of
> these issues, it would be helpful to have a common performance test framework,
> to make it easy to create and share performance tests scenarios.

+1

> As our codebase is C++ it would be natural to provide such a framework
> in C++, providing the maximum flexibility and customizability.
>
> On the other hand, sharing C++ code is not convenient, especially if want more
> casual users to be able to try out the scenarios. As an alternative, we could
> provide this test framework as a python library, possibly backed by a glue C++
> library as needed (note that for some scenarios a glue layer is not needed,
> since we could use our demo servers and clients, or write new ones).
>
> Here are some pros and cons of the solutions (pros of one are cons of the 
> other
> in this case):
>
> C++:
>  + Easy integration with code base
>  + Customizability of server/client behavior
>
> python (possibly backed by C++ glue layer):
>  + Easy to write
>  + Convenience in sharing test scenarios
>  + Plethora of existing libraries we need (e.g. python libs for babeltrace,
>    uinput, statistics)

Actually, as I expect we'd be dynamically loading the Mir server (e.g.
ctypes should make it easy to set up tests scenarios using
libmir_demo_server_loadable.so) I don't think it would be hard to enable
python to run an alternative build. (The server lib to load just becomes
a config option - making before/after comparisons easier.)

I don't think we can avoid writing any C++ (as we may want to add
specific hooks into the code) but I'd like that rolled into the
supported libraries not as an ad-hoc add on.

I'd say try the python approach and see if we hit limits.
-- 
Mir-devel mailing list
Mir-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/mir-devel

Reply via email to