Skip to main content



      Home
Home » Modeling » UML2 » CacheAdapter performance issue
CacheAdapter performance issue [message #1015022] Wed, 27 February 2013 03:30 Go to next message
Eclipse UserFriend
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 09:09 Go to previous messageGo to next message
Eclipse UserFriend
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 09:33 Go to previous message
Eclipse UserFriend
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: Wed Jul 23 15:15:23 EDT 2025

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

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

Back to the top