Skip to main content

Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » M2M (model-to-model transformation) » [ATL] Starting development of a new, faster Virtual Machine
[ATL] Starting development of a new, faster Virtual Machine [message #66806] Mon, 26 November 2007 17:27 Go to next message
Frédéric Jouault is currently offline Frédéric JouaultFriend
Messages: 572
Registered: July 2009
Senior Member
Hi all,

The development of a new (faster) ATL Virtual Machine has just started.

Its name is "EMF-specific VM" (or "emfvm"), because (at least for the
moment) it is specific to EMF.
Whereas the development of the previous VM was driven by modularity, the
development of emfvm is driven by performance.
Therefore, emfvm is a near-complete* rewrite:
- It implements the same specification.
- But most of the code has been rewritten from scratch with performance
in mind.
- Only a few pieces of code where reused because they were not
especially sensitive (e.g., model loading, bytecode parsing, which are
not called from the main execution loop).

* "near-complete rewrite" means that most of the code is new, not that
the implementation is almost complete yet (see below).

A first version is already available on CVS as can be seen at: .eclipse.m2m.atl/plugins/org.eclipse.m2m.atl.engine.emfvm/?r oot=Modeling_Project

Using emfvm requires installing it (only installation from CVS is
available at this time), then selecting the "EMF-specific VM" in the
advanced tab of the launch configuration. It is also possible to use
emfvm from ant scripts with the "vm" attribute of the am3.atl task.

Although it has already been tested successfully on several
transformations, emfvm does not implement all the features supported
by the previous VM yet. As explained above, emfvm is not yet ready to
replace the regular VM:

- Most users (especially new users) should still use the regular VM,
which is more complete, stable, and documented. The existence of emfvm
does not currently change anything for these users: the regular VM is
still used by default.

- Experimented ATL users can help the development of emfvm by reporting
( component=ATL-emfvm)
the missing features that prevent their favorite transformations from
running properly ;-).


Frédéric Jouault
Re: [ATL] Starting development of a new, faster Virtual Machine [message #69969 is a reply to message #66806] Wed, 19 December 2007 17:29 Go to previous messageGo to next message
Sebastien GABEL is currently offline Sebastien GABELFriend
Messages: 6
Registered: July 2009
Location: Toulouse
Junior Member
Hi all !

I tried the new "emfvm" engine and the first results are really amazing !!!
I wrote a transformation able to convert RSM diagrams into a Topcased
format. I encountered performance problems with the regular engine when
the xmi model size became important, i.e greater than some Mb.

Now, my execution times have considerably decreased and these times are
now divided by 60 between the regular VM and the emf VM.
If you don't believe me, you can try by yourself : go to the benchmark
page on the ATL wiki (
Here, you will find all required files and information to execute my own
transformation. On this page, I also explain some optimizations that is
possible to achieve on ATL rules in order to improve performances.

Finally, I measured execution times that I have summarised in the
following matrix :

Lot of thanks to the ATL team for their work ! My performance problem is


Sebastien GABEL
Re: [ATL] Starting development of a new, faster Virtual Machine [message #69989 is a reply to message #69969] Thu, 20 December 2007 08:44 Go to previous message
William Piers is currently offline William PiersFriend
Messages: 299
Registered: July 2009
Senior Member
This is a multi-part message in MIME format.
Content-Type: text/plain; charset=ISO-8859-15; format=flowed
Content-Transfer-Encoding: 8bit


Previous Topic:[ATL] Content assist
Next Topic:Can I use foreach in called rules?
Goto Forum:

Current Time: Fri Aug 12 16:05:34 GMT 2022

Powered by FUDForum. Page generated in 0.02238 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top