commit | 0c1d319e2fef13bcabc35b34e9ad9d405eb9d4ab | [log] [tgz] |
---|---|---|
author | Pierre-Charles David <pierre-charles.david@obeo.fr> | Mon Feb 04 15:02:56 2019 +0100 |
committer | Pierre-Charles David <pierre-charles.david@obeo.fr> | Sat Feb 09 12:57:48 2019 +0100 |
tree | f44f0d151fc12535d99ad8d5e301e70d3cfde0e2 | |
parent | d4407a6027c8236e50af945e288f36a9730cb5c6 [diff] |
[perf] Extract costly computation in ArrangeAllWithAutoSize outside of the loop On creation of a medium-sized diagram (1120 top-level elements with no children and no edges), this gets around 30% performance improvements in SiriusCanonicalLayoutCommand: from ~2000ms to ~1400ms: Before: - SiriusCanonicalLayoutCommand: 2015ms - SiriusCanonicalLayoutCommand: 1996ms - SiriusCanonicalLayoutCommand: 1992ms After: - SiriusCanonicalLayoutCommand: 1493ms - SiriusCanonicalLayoutCommand: 1420ms - SiriusCanonicalLayoutCommand: 1386ms Change-Id: I2e32c3e0362f99894610cc1368862fcf71f1ff0a Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
Sirius enables the specification of a modeling workbench in terms of graphical, table or tree editors with validation rules and actions using declarative descriptions.
For more details see the project page and the main wiki page.
The build uses Tycho. To launch a complete build, issue
mvn clean package
from the top-level directory. The resulting update-site (p2 repository) can be found in packaging/org.eclipse.sirius.update/target/repository
.
By default the build uses a Neon-based target platform. You can specify a different platform like this:
mvn clean package -Dplatform-version-name=name
where name
can be any of the following values:
mars
(Eclipse 4.5)neon
(Eclipse 4.6, the default and reference target platform)canary
(uses nightly builds of all our dependencies, only used for testing)The corresponding target platform definitions can be found in releng/org.eclipse.sirius.targets
.