Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Eclipse 4 » InjectorImpl Performance
InjectorImpl Performance [message #894827] Tue, 10 July 2012 12:49 Go to next message
Joseph Carroll is currently offline Joseph Carroll
Messages: 174
Registered: May 2012
Location: Milwaukee, WI
Senior Member

I am still working to fully understand the DI engine, but as I was reviewing the code I noticed that the class (InjectorImpl) is not declared as final. Is there a reason that it is not declared as final? Wouldn't there be a performance increase if it were because the compiler could "in-line" the code?

[Note to self: read "Java Performance"]

[Updated on: Tue, 10 July 2012 12:55]

Report message to a moderator

Re: InjectorImpl Performance [message #894851 is a reply to message #894827] Tue, 10 July 2012 14:52 Go to previous messageGo to next message
Brian de Alwis is currently offline Brian de Alwis
Messages: 242
Registered: July 2009
Senior Member
Give it a try and report back Smile

To be honest, I think the bigger win would be to use ASM or something similar and generate the injection code. This is what Guice does and is a big part of its speed.

Brian.
Re: InjectorImpl Performance [message #894853 is a reply to message #894851] Tue, 10 July 2012 15:17 Go to previous messageGo to next message
Joseph Carroll is currently offline Joseph Carroll
Messages: 174
Registered: May 2012
Location: Milwaukee, WI
Senior Member

Brian-

I'll give it a try, hopefully sometime this weekend I can have results. (Tonight I need to work on the PerspectiveSwitcher!)

Are there any existing performance tests for the framework?
I see the standard unit-tests, but there aren't any performance tests.

The other thing I would be interested in knowing is if the "HotSpot" JVM is doing its job and actually compiling down the bytecode. If methods are too long, the JVM will keep the method as bytecode even if it is a "hot" method. The issue is that longer methods are more difficult for the JVM to understand and optimize (to put it simply). Unfortunately, there is no single definition of a "long" method.

I might need some help in thinking up the logic for any performance tests, if none are presently available. But then I can look at both finalization and compilation of the different methods and see if anything makes a difference.
Re: InjectorImpl Performance [message #894987 is a reply to message #894853] Wed, 11 July 2012 06:54 Go to previous messageGo to next message
Sopot Cela is currently offline Sopot Cela
Messages: 596
Registered: December 2010
Senior Member

Hooking up JVisualVM to a running instance of Eclipse might help.
Re: InjectorImpl Performance [message #895038 is a reply to message #894987] Wed, 11 July 2012 09:35 Go to previous message
Joseph Carroll is currently offline Joseph Carroll
Messages: 174
Registered: May 2012
Location: Milwaukee, WI
Senior Member

My thoughts exactly, I was planning on using the profiling tool that is provided. And then I was also going to use the OpenJDK as it offers greater insight into the JIT Compiler.

That really leaves just the test case. Is there any documentation specifying performance benchmarks? See the event broker performance benchmarks as a reference:
http://wiki.eclipse.org/E4/Event_Processing#Eclipse-specific_design_parameters

Previous Topic:Migration from eclipse 3.x
Next Topic:Dragging source files between Windows
Goto Forum:
  


Current Time: Sat Aug 02 04:37:22 EDT 2014

Powered by FUDForum. Page generated in 0.02158 seconds