Bug 325696 - [DataBinding] Performance Tests
Summary: [DataBinding] Performance Tests
Status: RESOLVED WONTFIX
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 3.6   Edit
Hardware: PC All
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: Platform UI Triaged CLA
QA Contact:
URL:
Whiteboard:
Keywords: performance, test
Depends on:
Blocks:
 
Reported: 2010-09-19 11:07 EDT by Ovidio Mallo CLA
Modified: 2020-05-18 07:49 EDT (History)
3 users (show)

See Also:


Attachments
new performance test plugin (150.78 KB, application/octet-stream)
2010-11-28 15:06 EST, Ovidio Mallo CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ovidio Mallo CLA 2010-09-19 11:07:45 EDT
I think it would be nice to have some performance tests available for individual observable implementations, mainly for observable lists/sets/maps which often inhibit a certain performance overhead as compared to normal, non-observable lists/sets/maps.

Such performance tests might help us in discovering non-optimal implementations which can be optimized and they would also make it possible to get a feeling for the performance one might expect when working with different observable implementations.

Ideally, the performance tests could be implemented in the same spirit as the observable conformance tests by using a delegate interface which performs the actual operations on an observable and which makes it possible to apply the performance tests to as much observable implementations as possible.
Comment 1 Matthew Hall CLA 2010-10-12 23:17:39 EDT
Ovidio, reassigning to you since you filed this bug :)
Comment 2 Ovidio Mallo CLA 2010-11-28 15:06:29 EST
Created attachment 184000 [details]
new performance test plugin

Here's a new plugin which provides performance tests for observable list/set/map implementations. The plugin uses the Eclipse performance test framework so it requires the eclipse test framework plugins downloadable e.g. from [1].

The tests use a delegate interface to be able to run the same tests on different observable implementations. The main difference from the delegate interfaces of the existing conformance tests is that the interfaces used for the performance tests include delegate methods for all modification methods of a list/set/map. That way it's also possible to test observable implementations which are not directly modifiable.

There is a launch target for launching the tests and dumping the results to the console included which should work out-of-the-box. Another launch target stores the results in a local DERBY database (the database used by the eclipse performance test framework). For the results stored in a database it's also possible to view the measurements in a (very hacky :) ) UI by launching the ObservablePerformanceTestResultView class (see the included launch target). For using the DERBY database stuff, it's necessary to create a plugin named org.apache.derby (an optional dependency of the performance plugin) in the workspace containing the derby jars as described in [2].

The tests are very simple but I think that they show up a few interesting things and I think that they might help in finding parts which might need some performance tweaking. Running all the tests currently takes about 5 minutes. Feedback is welcome :).

[1] http://download.eclipse.org/eclipse/downloads/drops/R-3.6-201006080911/download.php?dropFile=eclipse-test-framework-3.6.zip
[2] http://dev.eclipse.org/viewcvs/viewvc.cgi/org.eclipse.test.performance/doc/Performance%20Tests%20HowTo.html?view=co
Comment 3 Ovidio Mallo CLA 2010-12-11 14:26:28 EST
Matthew, what do you think about the general idea of introducing this kind of performance tests?
Comment 4 Eclipse Webmaster CLA 2019-09-06 16:04:05 EDT
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet.

If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.
Comment 5 Lars Vogel CLA 2019-11-06 04:34:57 EST
Jens, WDYT?
Comment 6 Lars Vogel CLA 2020-05-18 07:49:29 EDT
No reply so I assume no one is interested in working on this one.