Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » UML2 » CacheAdapter performance issue
CacheAdapter performance issue [message #1015022] Wed, 27 February 2013 08:30 Go to next message
Joel Greenyer is currently offline Joel GreenyerFriend
Messages: 170
Registered: July 2009
Senior Member
Hi,
we are building a tool for executing UML models by interpretation.
When looking to increase the performance, I found during profiling that there are many time-consuming calls of InverseCrossReferencer.add().
They come from the CacheAdapter, which is notified of virtually any operation on our runtime objects.
These operations do not change the UML model itself, so I think that whatever the CacheAdapter is doing (unfortunately, I'm not an expert here), it's not necessary.

Is there any way to prevent the CacheAdapter from listening to changes?

Thanks

Joel
Re: CacheAdapter performance issue [message #1015119 is a reply to message #1015022] Wed, 27 February 2013 14:09 Go to previous messageGo to next message
Christian W. Damus is currently offline Christian W. DamusFriend
Messages: 847
Registered: July 2009
Senior Member
Hi, Joel,

I replied in the EMF newsgroup. It seems that my newsreader didn't
cross-post the reply to your cross-post.

cW


On 2013-02-27 08:30:02 +0000, Joel Greenyer said:

> Hi,
> we are building a tool for executing UML models by interpretation.
> When looking to increase the performance, I found during profiling that
> there are many time-consuming calls of InverseCrossReferencer.add().
> They come from the CacheAdapter, which is notified of virtually any
> operation on our runtime objects.
> These operations do not change the UML model itself, so I think that
> whatever the CacheAdapter is doing (unfortunately, I'm not an expert
> here), it's not necessary.
>
> Is there any way to prevent the CacheAdapter from listening to changes?
>
> Thanks
>
> Joel
Re: CacheAdapter performance issue [message #1015132 is a reply to message #1015022] Wed, 27 February 2013 14:33 Go to previous message
Ed Willink is currently offline Ed WillinkFriend
Messages: 4188
Registered: July 2009
Senior Member
Hi

UML is a very powerful modeling notation and since the UML specification
specifies many relationship using subsetting and derived unions, the
MDT/UML2 implementation faithfully supports these using CacheAdapter to
try to improve behaviour significantly for the typically sparse usage of
real models.

Conversely EMOF/Ecore is optimized for run-time representation with no
duplication or representation of analysis subtleties.

If you are looking at efficient execution on top of UML, you might want
to look at the new OCL Pivot-model that is a hybrid of the above design
points. The Pivot model is UML-aligned but has no duplicate
relationships and makes all unnavigable oppisities as navigable, and
reifies stereotypes.

Regards

Ed Willink




On 27/02/2013 08:30, Joel Greenyer wrote:
> Hi,
> we are building a tool for executing UML models by interpretation.
> When looking to increase the performance, I found during profiling
> that there are many time-consuming calls of InverseCrossReferencer.add().
> They come from the CacheAdapter, which is notified of virtually any
> operation on our runtime objects.
> These operations do not change the UML model itself, so I think that
> whatever the CacheAdapter is doing (unfortunately, I'm not an expert
> here), it's not necessary.
>
> Is there any way to prevent the CacheAdapter from listening to changes?
>
> Thanks
>
> Joel
Previous Topic:Stereotype applicable to different elements
Next Topic:Re: CacheAdapter performance issue
Goto Forum:
  


Current Time: Sun Dec 21 01:57:47 GMT 2014

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

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