Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » QVT-OML » Run multiple transformations in parallel
Run multiple transformations in parallel [message #1715665] Wed, 25 November 2015 07:28 Go to next message
Denis Nikiforov is currently offline Denis NikiforovFriend
Messages: 196
Registered: August 2013
Senior Member
Hi

Is it theoretically possible to run multiple QVTo transformations in parallel? Our developers encounter ConcurrentModificationException or NullPointerException when trying to do it. I afraid that I can't provide a simple project which reproduces these errors.

I need to know whether it is possible theoretically or not. Is there any open source examples?

Thanks!
Re: Run multiple transformations in parallel [message #1715666 is a reply to message #1715665] Wed, 25 November 2015 07:31 Go to previous messageGo to next message
Denis Nikiforov is currently offline Denis NikiforovFriend
Messages: 196
Registered: August 2013
Senior Member
Maybe you can suggest some recomendations for parallel usage of EMF resources?
Re: Run multiple transformations in parallel [message #1715694 is a reply to message #1715666] Wed, 25 November 2015 10:02 Go to previous messageGo to next message
Ed Willink is currently offline Ed WillinkFriend
Messages: 5887
Registered: July 2009
Senior Member
HI

The EMF thread safety policy is eminently pragmatic.

See https://bugs.eclipse.org/bugs/show_bug.cgi?id=455980

Classic Ecore-based OCL makes no claims to thread safety. Iff you ensure
that all start up occurs on a single thread, and avoid creating any
synthesized types you might stand a chance.

Since QVTo depends on Classic Ecore and I am not aware of any attempt at
thread safety, I would expect none.

The new Pivot-based OCL is intended to be thread safe and so exploit
concurrent multi-core execution. This is an intent that has never been
exercised.

The new QVTi execution engine for QVTr/QVTc and eventually QVTo is also
designed to be thread safe.

Both of these intents are very dependent on accurate manual coding of
every smart shared cache. I'm not convinced that this is feasible
manually and so one of my background considerations is an auto-generator
for these caches.

Regards

Ed Willink




On 25/11/2015 07:31, Denis Nikiforov wrote:
> Maybe you can suggest some recomendations for parallel usage of EMF
> resources?
Re: Run multiple transformations in parallel [message #1715726 is a reply to message #1715694] Wed, 25 November 2015 13:46 Go to previous messageGo to next message
Denis Nikiforov is currently offline Denis NikiforovFriend
Messages: 196
Registered: August 2013
Senior Member
Thanks for answer!

I've made a test project https://github.com/AresEkb/test_par_qvto And it seems that QVTo works fine in parallel!
The problem is that we transform OCL constraints into another language. And Pivot OCL causes exceptions.

I've asked the question in OCL forum: https://www.eclipse.org/forums/index.php/m/1715724/
Here is a test project for parallel OCL parsing: https://github.com/AresEkb/test_par_ocl
Re: Run multiple transformations in parallel [message #1715736 is a reply to message #1715726] Wed, 25 November 2015 14:56 Go to previous message
Ed Willink is currently offline Ed WillinkFriend
Messages: 5887
Registered: July 2009
Senior Member
Hi

If it works great - for research purposes. Do not relynon it for any
serious form of production use.

Regards

Ed Willink


On 25/11/2015 13:46, Denis Nikiforov wrote:
> Thanks for answer!
>
> I've made a test project https://github.com/AresEkb/test_par_qvto And
> it seems that QVTo works fine in parallel!
> The problem is that we transform OCL constraints into another
> language. And Pivot OCL causes exceptions.
>
> I've asked the question in OCL forum:
> https://www.eclipse.org/forums/index.php/m/1715724/
> Here is a test project for parallel OCL parsing:
> https://github.com/AresEkb/test_par_ocl
Previous Topic:Modified parameter 'self' is input only
Next Topic:bpmn2uml
Goto Forum:
  


Current Time: Wed May 23 23:00:39 GMT 2018

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

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

Back to the top