Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [mdt-papyrus.dev] :mdt-papyrus.dev] [Papyrus Oxygen.3] Papyrus element creationperformance -> new video and new behavior

Hello everybody,

                Here, I tell you about the element creation performance, using the Papyrus API (element type) and outside of a graphical view.

 

I pushed yesterday changes concerning the naming strategies (Photon and Oxygen). Now, 3 behaviors are available:

                - quick index (no necessary unique)  -> the new default strategy used in Papyrus (constant time execution)

                - unique index (the previous behavior) (depends of the number of element in the owner)

                - no index

 

 

The associated bug is this one : https://bugs.eclipse.org/bugs/show_bug.cgi?id=530155

The patch for Photon is here : https://git.eclipse.org/r/#/c/115844/

                - it includes an update of the Junit tests when required

                - the updated documentation

                - a new preference page to configure the new behavior

                - the patch itself

 

 

A video illustrating the changes is available on youtube: https://youtu.be/eeLGQPnMAyM.

 

Workbench : required time to create creating 5000 SysML Blocks using Element Types:

                - around 200 s. before patching Papyrus, UML2 and SysML 1.4

                - around 16s now.

 

An important information, when you create Profile, with subpackge/subprofile, lile SysML, registering them in the plugin.xml too, make increate the performance (it avoid to cross the model to find same).

 

JUnits Test:

This changes could break some Junit tests. It is easy to fix them with these lines before the tests (often in the #setUp method of the class):

                // we set the default naming strategy, to preserve a previous test behavior

                org.eclipse.papyrus.uml.tools.utils.Activator.getDefault().getPreferenceStore().setValue(NameElementNamingStrategyPreferenceInitializer.NAMED_ELEMENT_INDEX_INITIALIZATION, NamedElementIndexNamingStrategyEnum.UNIQUE_INDEX_INITIALIZATION.getName());

 

And at the end of the test, with these line, to recover the new default behavior (often in the #tearDown method of the class:

                // we reset the naming strategy to its initial value

                org.eclipse.papyrus.uml.tools.utils.Activator.getDefault().getPreferenceStore().setToDefault(NameElementNamingStrategyPreferenceInitializer.NAMED_ELEMENT_INDEX_INITIALIZATION);

 

Concerning the performance of Papyrus when the creation is done in Diagram, we did a first analysis of the problem and the result can be read in the bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=531145 .

 

Regards,

--

Vincent Lorenzo

 

De : mdt-papyrus.dev-bounces@xxxxxxxxxxx [mailto:mdt-papyrus.dev-bounces@xxxxxxxxxxx] De la part de LORENZO Vincent
Envoyé : mercredi 17 janvier 2018 17:44
À : Papyrus Project list <mdt-papyrus.dev@xxxxxxxxxxx>
Objet : [PROVENANCE INTERNET] [mdt-papyrus.dev] [Papyrus Oxygen.3] Papyrus element creationperformance

 

Hello everybody,

                For Oxygen.3, we start to investigate the performance of the Papyrus edit service. The ticket to follow the investigation is this one : https://bugs.eclipse.org/bugs/show_bug.cgi?id=529945

After a short study, it appears that :

                                - there is no real difference between papyrus Neon and Papyrus Photon

                               - the element’s creation depends on the number of elements in the model (for UML element with or without stereotype application)

                               - creating stereotyped elements is very slow in Papyrus, but in UML2 too. So we filled a ticket to UML2 : https://bugs.eclipse.org/bugs/show_bug.cgi?id=528925

 

We continue to investigate about the Papyrus Edit Service which must be more efficient on element creation, at least, for non-stereotyped element.

 

                If you have remarks to do on the subject, please don’t hesitate.

 

Regards,

--

Vincent LORENZO

01-69-08-17-24

CEA Saclay Nano-INNOV

Institut CARNOT CEA LIST

DILS/LISE

Point Courrier n° 174

91 191 Gif sur Yvette CEDEX

 


Back to the top