Hi,

one more fact not mentioned so far:

Using the Felix Event Admin bundle with the Knopflerfish OSGi framework improves the Felix Event Admin test results about a factor of 2 and more, reaching similar performance in the async case as the Knopflerfish Event Admin bundle. This could be related to a more efficient service registry implementation in Knopflerfish itself (at least for the used test cases).

- Sascha

On 08/12/2013 10:25 PM, Sascha Zelzer wrote:
Hi,

On 08/12/2013 08:35 PM, Pepijn Noltes wrote:
Hi Sascha,

Very interesting indeed, thanks for mailing this.

On Mon, Aug 12, 2013 at 2:32 PM, Sascha Zelzer
<[email protected]> wrote:
Hi,

I thought this might be of interest to you guys:

When I implemented the event admin spec in C++ for the CTK Plugin Framework,
I also literally took the Felix Java implementation and translated it to C++
(including the fancy stuff like sending asynchronous events in parallel and
blacklisting handlers given a certain timeout). After the implementation, I
did a performance test of the event admin (from Felix, Equinox,
Knopflerfish, and CTK) and found out that Felix performed the worst. This
might be due to the more complex implementation (related to blacklisting
etc.) but I didn't review the other Java implementations enough.

I attached screenshots of the diagrams showing some numbers (The
Knopflerfish event admin was by far the best performing) . The used versions
are:
I think you forgot the attachment, could you (re)send it?
I looked at my "Sent" folder and the attachments are there... maybe the
mailing list doesn't allow png attachments? I am trying to attach them
again, but you can also look at them here:

http://blog.cppmicroservices.org/images/event_admin_async_perf.png
http://blog.cppmicroservices.org/images/event_admin_sync_perf.png

Knopflerfish 3.4.0 with the packaged Event Admin bundle (version 3.0.7)

Eclipse Equinox as provided in Eclipse 3.7 together with the Eclipse Event
Admin bundle (version 1.2.100)

Felix Framework (version 4.0.3) with the Felix Event Admin bundle (version
1.3.2).

Personally I would like to see a good performance for the event admin
for Celix, especially because of it's potential target environment
(real-time embedded). So taking that in account and trusting that
Sascha did a good benchmark ;), I think it would be wise for Erik to
first take a look at the knoperfish implementation.
I guess I could dig up my OSGi test bundle if someone is interested in
trying to reproduce the results.

Best,

Sascha


Reply via email to