Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[mdt-papyrus.dev] Performance analysis results

Hi everyone,

at the end of last year we have worked on identifying performance bottlenecks in Papyrus. For this reason a set of use cases were collected [1] that were known to be slow.

We have followed the following steps to find issues methodically:
 1. At first, the test cases were implemented as RCPTT tests to provide a repeatable measurement environment [2].
 2. After the test cases are available, profilers were used to provide a more detailed evaluation [3].
 3. By analyzing the profiling results we have not found any clear performance bottleneck, but time is spend in various parts of the codebase, such as SWT, MDT-UML, Papyrus services, classloading, etc.
 
This usually means localized changes are not expected to provide meaningful performance enhancements. Such larger changes may include using different traversal strategies to collect information to the user interface and similar algorithmic changes.

An example of such a change might be the use of eager indexing and incremental query evaluation provided by VIATRA. We have provided a wiki page [4] providing an overview of various caching strategies supported by VIATRA, detailing the various possibilities that might be evaluated with a microbenchmark and introduced live model validation as another use case.

If you have any question or feedback about the results, e.g. something is unclear, or maybe you have some insight what or how to check, it would be very interesting to hear about it.

Best regards,
Zoltán

1: https://wiki.eclipse.org/Papyrus/Oxygen_Work_Description/Refactoring/PerformancesImprovements#Use_cases:
2: https://wiki.eclipse.org/Papyrus/Oxygen_Work_Description/Refactoring/PerformancesImprovements#User_interface_performance_evaluation
3: https://wiki.eclipse.org/Papyrus/Oxygen_Work_Description/Refactoring/PerformancesImprovements#Detailed_profiling
4: https://wiki.eclipse.org/Papyrus/Oxygen_Work_Description/NewFeature/ModelIndexer

-- Zoltán Ujhelyi

Eclipse Technologies Expert
IncQueryLabs Ltd.


Back to the top