Top Banner
Boosting the Performance of your Eclipse IDE Karsten Thoms
38

Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Jan 14, 2017

Download

Software

Karsten Thoms
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Boosting the Performance of your Eclipse IDE

Karsten Thoms

Page 2: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

https://stocksnap.io/photo/PTGK3N8C1C

Page 3: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

The convenient way

Page 4: Boosting the performance of your Eclipse IDE - EclipseCon France 2016
Page 5: Boosting the performance of your Eclipse IDE - EclipseCon France 2016
Page 6: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Wow! That was too easy!

Page 7: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Hunting performance issues

http://www.stockvault.net/photo/164167/iceberg

Page 8: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Hardware

Page 9: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Configure Anti-VirusJRE/JDK

Eclipse Installation Folder

~/.p2

Workspace Folder

Project Folders

Output Locationshttp://www.stockvault.net/photo/180403/cyber-security-concept-with-umbrella-on-data-screen

Page 10: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Disable IndexingOS indexes every changed file Consumes CPU & IO Usually senseless for build output and workspace metadata

Can only be disabled easily for directories, not by file types Programmatically:

Spotlight: Flag File.metadata_never_index

Windows: attrib.exe /s –i *.*

Page 11: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

RAM Disk

http://www.tekrevue.com/ram-disk-2013-mac-pro-2014-macbook-pro/

Page 12: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

RAM DiskWhat to store?

Read-only Data

JRE

Bundle Pool

Output folders

Use Symbolic Links

Store / Restore state to/from persistent storage

Page 13: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Clean Build Xtext w/o RAM Disk

Page 14: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Clean Build Xtext with RAM Disk

Page 15: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

eclipse.ini Java SettingsUse the latest JRE

Use Server VM

Activate Parallel GC

Use enough Heap

Increase Young Generation Space

Disable Class Validation

Turn on Compiler Optimizations

-vm/Library/Java/JavaVirtualMachines/jdk1.8.0_66.jdk/Contents/Home/bin-server-XX:+UseParallelGC-Xms512m-Xmx2g-Xmn512m-Xverify:none-XX:+AggressiveOpts

Page 16: Boosting the performance of your Eclipse IDE - EclipseCon France 2016
Page 17: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Eclipse Installation

Page 18: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Eclipse InstallationDon’t store Eclipse / Workspace on Network Share

Use a current Eclipse distribution

Don’t install every feature any team member might use

Different feature set for different tasks?

Expensive: Mylyn, Subversion

Use Oomph setups or Eclipse Profiles

Page 19: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Preferences

Page 20: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Deactivate unimportant Startup Plug-ins

Page 21: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Disable Spell Checking

Page 22: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Disable Code Folding

Page 23: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Suspend unnecessary Validators

Page 24: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Disable Animations

Page 25: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Disable unnecessary Decorations

Page 26: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Maven

Page 27: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Avoid copying .gitignore

Page 28: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Split Large Projects

Page 29: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Split Large Projects

Page 30: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Make Projects Closeable

Page 31: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Make Projects Closeable

Page 32: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Resource Filters

Page 33: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Compiler Warnings

Reduce compiler warnings

If you ignore them anyway, filter them

Ignore optional warnings on selected source folders (e.g. generator output)

Page 34: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Plug-in DevelopmentTarget Platform

Mirror/Aggregate Public p2 Repositoriesb3 Aggregator, Buckminster, p2 Tools

Deploy on Local Network / Repository Manager

Launch Config for Eclipse Application

Required bundles only

Disable API Tooling during development Enable on demand, in CI, before milestones

Page 35: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Cleanup Metadata

Clean JDT index<WS>\.metadata\.plugins\org.eclipse.jdt.core

Resource History <WS>\.metadata\.plugins\org.eclipse.core.resources\.history

PDE caches / Bundle Pool <WS>\.metadata\.plugins\org.eclipse.pde.core

or even fresh workspacehttp://www.stockvault.net/photo/133998/recycling-grunge-sign

Page 36: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Profilehttp://www.stockvault.net/photo/134668/-stopwatch

Page 37: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

Questions ?

http://www.stockvault.net/photo/122646/school-boy-

Page 38: Boosting the performance of your Eclipse IDE - EclipseCon France 2016

References“7 Tips to Speed Up Eclipse”

http://www.nicolasbize.com/blog/7-tips-to-speed-up-eclipse/

„15 Useful Tips - Speed Up Eclipse To An Ultra Fast IDE"http://www.fromdev.com/2013/05/Speed-Up-Eclipse.html

„How to quickly make eclipse faster“ http://howtodoinjava.com/2014/04/05/how-to-quickly-make-eclipse-faster/

“Benchmarking G1 and other Java 7 Garbage Collectors”http://blog.mgm-tp.com/2013/12/benchmarking-g1-and-other-java-7-garbage-collectors/

Alex Blewitt: “Eclipse start optimisation”http://alblue.bandlem.com/2015/09/eclipse-optimisation-part-2.html

Lars Vogel: “Eclipse Activator startup sins – Tracing the startup time”http://blog.vogella.com/2015/09/16/eclipse-activator-startup-sins-tracing-the-startup-time/