Speed up your eclipse as a super fast IDE

June 25, 2011 by
Filed under: java 

Follow these steps to speed up your eclipse as a super fast IDE , it works for 32 & 64 bit version eclipse/jdk on my windows 7 x64.

1.Disable antivirus software, or add your jdk & eclipse & workspace & other related folder to white list in your antivirus software.

2.Disable unecessary validations and startup action in eclipse reference.

For validations: on eclipse menu Windows -> Preferences -> Validation, click “Disable All”, and then select the validator which you need. I selected “Classpath Dependency Validator” only.

For startup action: on eclipse menu Windows -> Preferences, type “startup”, select “Startup and Shutdown”, untick the options you don’t need. (Thanks for David’s suggest,  I’ve added the above 2 detail steps for readers)

3.Modify eclipse.ini to set the Xmn(new generation size), Xms and Xmx, enable parallel GC

4.Create a ram disk(virtual disk) on memory, and put your jdk on the ram disk.
You can use imdisk to create ram disk. Firstly download it from: http://www.ltr-data.se/opencode.html/#ImDisk,  and install it.

Then set the ImDisk driver to auto-load at Command Prompt with administrative privileges (for example right-click, start as Administrator), type:

sc config imdisk start= auto
net start imdisk

create a 200m ram disk as driver n by:
imdisk -a -t vm -s 300m -m n:

then you should format the ram disk manually.

later ,if you would like to remove the ram disk, just run the command:
imdisk -D -m n:

5.Make sure you are using sun jdk, not open jdk/gcj nor other jdk on linux.
If you are not satified with the after the above steps, install jrockit instead of sun jdk, and change some of the vm options by jrocket specification,
jrockit is faster than sun jdk.

Some note:

On my laptop(Aspire 4745G 4G mem ), windows 7 x64, by default, it takes more than 30 seconds to start eclipse.  After the vm options tuned,  takes only 15 seconds.

And after jdk moved to ram disk, it takes 10 seconds to startup.

Digg This
Reddit This
Stumble Now!
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)


57 Comments on Speed up your eclipse as a super fast IDE

  1. Ashish on Sat, 25th Jun 2011 2:48 pm
  2. Yes, that works perfectly. On a 4GB Core 2 Duo laptop, it reduced from 30+ secs to 6 secs just by the eclipse.ini modifications mentioned above.


    […] Speed up your eclipse as a super fast IDE | Euler的备忘录beyondlinux.com […]

    […] Delicious popular This entry was posted in yahoo rss and tagged yahoo. Bookmark the permalink. ← Toronto […]

    […] the original post: Speed up your eclipse as a super fast IDE | Euler的备忘录 25 June 2011 | Uncategorized | Trackback | del.icio.us | Stumble it! | View Count : 0 Next Post […]

  3. asif on Sat, 25th Jun 2011 11:12 pm
  4. awesum. It works 🙂

  5. links for 2011-06-25 « that dismal science on Sun, 26th Jun 2011 3:32 am
  6. […] Speed up your eclipse as a super fast IDE | Euler的备忘录 (tags: development performance eclipse speedup) […]

  7. David O'Meara on Mon, 27th Jun 2011 9:46 am
  8. Firstly this only covers starting the Eclipse application, and while this appears to save several seconds I tend to leave the application running most of the day so this is only a small gain in the larger picture. It does not address any metrics about the continued running of the application.
    Secondly there are no details provided about step 2 so readers do not have sufficient information to perform this step (hint: on the Eclipse menu go to Window > Preferences and type ‘startup’

  9. euler on Mon, 27th Jun 2011 10:04 am
  10. David, Thanks for your helpful suggest, I’ll add the tips for step 2.
    The step for jvm tuning shall speed up your eclipse not only on starting but also on continued running of eclipse.

  11. Greg on Mon, 27th Jun 2011 5:29 pm
  12. Could you include more details about RAM Disk?

    I know how to put JDK there, but how to make it permament? Isn’t it “formatted” on restart?

  13. David O'Meara on Mon, 27th Jun 2011 8:20 pm
  14. and I love the idea of jvm-on-a-ram-disk, decadent and supercharged. I’ma Linux user but I may need to try it myself since the bulk of my day is Java related and could use use some directed boost.

  15. euler on Tue, 28th Jun 2011 12:49 pm
  16. The RAM disk lost on startup for im disk. I wrote a script to create an RAM disk and copy jdk directory to the disk, and run the script manually on windows 7 (due to right elevation on windows 7 it is not easy to format ram disk on startup) . It takes some time to copy files, also on windows 7. If your eclipse is fast enough, then I suggest don’t use RAM disk. If SSD available, try it to store your jdk, eclipse and workspace in SSD.

  17. Nicolas on Mon, 27th Jun 2011 4:07 pm
  18. It is common to put the eclipse workspace into ram. I didn’t know for the eclipse installation itself. Does it improve performance after startup too? Have you seen something noticeable from that?

    Our problem here is that it is not possible to use a RAM disk for our workspace. One view only for our main project eat more than 2GB. And we have classically 4-5 view with different version of the code. We could restrict to the sources, but this would require a full redesign of the build tool. For our case, an SSD would be the best I think.

  19. FrikiFriends » Speed up – Eclipse! on Mon, 27th Jun 2011 7:19 pm
  20. […] http://www.beyondlinux.com/blog/?p=93 Like Unlike Categories: Uncategorized Tags: Comments (0) Trackbacks (0) Leave a comment Trackback […]

  21. Robert on Mon, 27th Jun 2011 9:45 pm
  22. Quite honestly…if you have to go through all that to make it “fast” then that is a FAIL.

  23. euler on Mon, 27th Jun 2011 11:33 pm
  24. Rober, though I don’t know how could you get this conclusion. And can’t agree with you, but all comments are welcome. It is more appreciated if you may explain it in more detail.

  25. Coombesy on Tue, 28th Jun 2011 5:04 am
  26. Sorry euler, I’m inclined to agree with Robert.
    If you work for an organisation that imposes draconian measures on expensive developers that requires the measures outlined in your blog, then it’s clear the company has missed the point…time is money and developers performing any task other than coding is a waste of time and money.

  27. euler on Tue, 28th Jun 2011 9:37 am
  28. Thanks Coombesy and Robert. I think if it boost up your IDE then it worth the time.
    Step 1,2,5 is a basic precondition for a fast eclipse, step 3 takes a significant change.

  29. Gabriel on Tue, 28th Jun 2011 12:16 am
  30. Hi!

    My corporate antivirus at work is Trendmicro, and while the startup time before installing that antivirus was about 1 minute, AFTER installing the antivirus it took eclipse more than 6 MINUTES to startup!!!

    Some antiviruses are an overkill endeed!!

    Thanks for the post!

  31. euler on Tue, 28th Jun 2011 12:53 pm
  32. Some Antivirus really slow down your IDE, not only eclipse but also Visual Studio. Trendmicro’s engine does lots of things against files to make sure your system safety. I suggest to add related folders to the white list if possible.

  33. Vladimir Svydenko on Tue, 28th Jun 2011 3:38 am
  34. My Eclipse spent for start ~4 minutes.
    After steps 1-3 it spent only 1 min 14 sec.
    A lot time spent for check to updating Andriod Library…

  35. euler on Tue, 28th Jun 2011 12:50 pm
  36. Thanks for the sharing.

  37. Stjepan Obrankovic on Tue, 28th Jun 2011 3:43 pm
  38. I am certain that this works, but really, should we go through all that trouble to make it 15 seconds faster at the startup. Also, I don’t like the idea of turning off antivirus.

  39. Thor K on Tue, 28th Jun 2011 11:48 pm
  40. Beware of file caching when comparing eclipse load time before and after vm-tweaks. You can reboot between measurements. May there is another way, how can you trust it?

  41. euler on Wed, 29th Jun 2011 9:16 am
  42. You can verify it by simple way, firstly tweak the vm, load your eclipse, record the startup time and hang times, then quit; then restore your vm settings, and start your eclipse again, record the time and compare them. You really don’t need to reboot. If it is caused by caching, the default vm settings in eclipse.ini should be faster…. Just try it, you will get the truth.

    BTW, JVM options really do a big impact on application performance due to its designing.

  43. James on Wed, 29th Jun 2011 1:35 am
  44. I don’t understand how the JVM on RAM disk would help much. Assuming you have enough RAM to create a RAM Disk, does not the OS auto-cache everything in RAM after the first run anyway? (Assuming relatively continuous usage and/or excess surplus RAM. If neither is the case, RAM Disk is probably a bad idea anyway since we are denying the adaptivity of RAM that OS provides and is needed in low memory or infrequent use settings).

    Empirically, I am not seeing much difference (~15% better in RAM Disk – predictable perhaps for not doing simple checks over a disk FAT) after loading JDK + Tomcat on RAM Disk (also set to publish directly). I measure only the second run onwards for each to equally let the cache effect apply. While first runs from RAM disk will load faster, there won’t be any advantage after factoring RAM Disk creation and population.

    I recall a Dev who wrote that he prefers to load the workspace from a RAM Disk and then checks in his projects into it from a local repository. This might help more since disks are slower in writing than reading. However, a good OS (MS Windows included) should also cache writes (depending on your setting – For instance, Windows can skip caching to allow you to quick eject a USB drive). So the difference again should not matter much.

    I wish these claims stated some hard metrics. Else, we talk in terms of pre-biased experiences (we see what we expect when effect sizes are not large). I suspect that the first poster’s experience (30s to 6 sec) is most likely due to cache effects (a so-called confounder in statistics) that he is erroneously attributing to changed settings (unless his memory settings were way too low for his configuration to begin with so that a lot of GC was kicking in). Ashish, can you provide your initial settings?

    One tip that definitely helped load times is to close unused projects while shutting Eclipse down. This makes sure that Eclipse does not load unused functionality at the next startup (esp. if you have several old projects using different plugins).

    Not to demand anything, but could those with great improvements state which modification helped by how much and how they measured?


  45. euler on Wed, 29th Jun 2011 9:25 am
  46. There is a note on the post end, the default is the settings shipped with eclipse indigo, and I tested it in helios too. It is rather simple to verify if the improvement is caused by OS cached. You can just start your eclipse with tuned jvm settings in the 1st run, and then with default setting in the 2rd run, then compare them. For different os with different environment, different factor count; The vm tunings is the most significant most of the times, but step 1,2,5 is a must.

  47. James on Thu, 30th Jun 2011 1:07 am
  48. > You can just start your eclipse with default jvm settings in the 1st run, and tuning the setting in the 2rd run, then compare them.

    No, you cannot. This is exactly what I meant by the cache confounder. The first run will be slow and the second run will be fast *EVEN WITHOUT TUNING*. A more proper method would be

    Run 1: Skip timing this
    Run 2: Time this as base line
    Change Settings at this point
    Run 3: Skip timing this (less important than skipping Run 1 timing)
    Run 4: Time this as the improvement.

    The above is the minimal method. It is always important to take multiple runs when timing anything and consider the fastest (not average) to rule out cache.

  49. euler on Thu, 30th Jun 2011 6:50 pm
  50. Sorry, James, I misspelled the sentence.
    I meant you may start your eclipse with tuned jvm settings in the 1st run, and default setting in the 2rd run, then compare them. If the 1st is faster, then it means the tuning works. Its a rough and simple way, not an accurate way. The method you mentioned is more scientific & accurate. In some tests, we reboot the system, and test the software in a clean environment, record the first start(warm up) A1, and record the average start time after first run as A2; after version updated or setting changed, record the first start as B1, and the average start time after first start as B2, then compare A1 and B1, A2 and B2.

  51. Babatunde Adeyemi on Wed, 29th Jun 2011 10:01 pm
  52. Thanks a lot for the tip. 2 alone worked wonders on my MacBook. The startup time dropped from 90s to 20s.

  53. Cheatsheet: 2011 06.20 ~ 06.30 - gOODiDEA.NET on Thu, 30th Jun 2011 6:31 pm
  54. […] Speed up your eclipse as a super fast IDE […]

  55. Clark Brown on Wed, 6th Jul 2011 7:50 pm
  56. A much better way to make Eclipse run faster is to install Linux as the OS. I am not trying to start a religious discussion here, but I work in a dev group where about half the developers use Eclipse on Windows and half on Ubuntu. It is much faster on the Ubuntu boxes.

  57. Fast eclipse | Huecisto on Tue, 26th Jul 2011 1:12 am
  58. […] 5 steps to speed up your eclipse as a super fast IDE | David Euler … […]

  59. Rapt on Thu, 25th Aug 2011 9:15 pm
  60. Regarding step 4: “Create a ram disk(virtual disk)”. Did I miss something? Doesn’t Windows already have a built-in virtual memory? And why do we need an external program (imdisk) to create a virtual memory?

    Thank you for your time.

  61. pablo grisafi on Tue, 30th Aug 2011 2:02 am
  62. A ram disk is not the same as virtual memory: is the exact opposite.
    A ram disk is a part of your RAM pretending to be a hard disk, so it is faster (way faster), but changes are lost on restart (no big deal if you copy the data from disk on every boot) and it’s more expensive.
    Virtual memory is a part of your hard drive pretending to be RAM. It’s cheaper (way cheaper) but slower, and allows you to run more programs at the same time.

    Both are useful tools, both can have drawbacks.

  63. Raja on Wed, 22nd Feb 2012 5:52 pm
  64. nice explanation pablo grisafi

  65. sanibel island resorts on Sat, 3rd Sep 2011 7:24 am
  66. a small question…

    Hi there, I needed to ask you one thing. Is this site a wordpress web site? We are thinking of moving my web site from Blogger to wordpress, you think that is feasible? Additionally did you design the following theme yourself some how? Thank you for yo…

  67. Gkamath on Tue, 11th Oct 2011 12:24 pm
  68. Really nice, followed steps 1-3, earlier i used to take at least 7 -10min to open my Eclipse IDE, now it takes hardly 10sec.
    Thank you so much!

  69. [Java] Speed up eclipse | SoftBlog on Mon, 28th Nov 2011 12:06 pm
  70. […] http://www.beyondlinux.com/2011/06/25/speed-up-your-eclipse-as-a-super-fast-ide/ This entry was posted in Uncategorized and tagged java, linux by Jay. Bookmark the permalink. […]

  71. neerav on Wed, 30th Nov 2011 11:30 am
  72. Hi,
    After trying the above steps it sure did decrease the startup time. But the problem is when I use 64 bit subclipse 1.8 along. I have about 125 projects that I try to synch together and eclipse just crashes after a while. Previously used to have even more projects with helios and 1.6 subclipse, everything used to work perfectly.

    btw, i am working on a i-5 + 8 gb ram with windows 7 64 bit

    Any suggestions?

  73. URL on Mon, 2nd Jan 2012 4:12 pm
  74. … [Trackback]…

    […] Read More: beyondlinux.com/2011/06/25/speed-up-your-eclipse-as-a-super-fast-ide/ […]…

  75. Eclipse by alexis - Pearltrees on Mon, 9th Jan 2012 8:05 am
  76. […] 5 steps to speed up your eclipse as a super fast IDE | David Euler on programming, design and linux Follow these steps to speed up your eclipse as a super fast IDE , it works for 32 & 64 bit version eclipse/jdk on my windows 7 x64. […]

  77. Marvin on Fri, 3rd Feb 2012 11:32 pm
  78. Thanks for the tips 🙂
    Here is a simple bat file loaded on startup that creates the whole thing for me.
    8 seconds to launch Eclipse.

    sc config imdisk start= auto
    net start imdisk
    imdisk -a -t vm -s 180m -m N: -p "/fs:ntfs /q /y"
    xcopy "C:\tools\jdk1.6" "N:\" /D /E /C /R /H /I /K /Y /Q

  79. Neerav Pandya on Sun, 12th Feb 2012 12:25 am
  80. As I can understand one should write this in a notepad and then save the file where??
    Please excuse me for such trivial question. Actualy I am quite new to all this. I have made a career shift from sales (15+ years) into java (6 months). I would really appreciate if you could help me with this. Following other steps I could reduce the load time of eclipse indigo from 10 min to 2 min 30 sec but wish if it could come down to under 1 min.
    Thanks in advance.

  81. euler on Sun, 12th Feb 2012 8:23 pm
  82. Neerav, which step do you mean? If you mean step 3, the eclipse.ini is located at your eclipse program’s root folder.

  83. Marvin on Fri, 23rd Mar 2012 6:29 pm
  84. Hello Neerav,

    This file is just an automation of the ram disk creation at Windows startup. On my Windows 7 workstation, I created this file using notepad and saved it to C:\boot.bat. Then I have just created a link to this file into the startup directory of my Windows account which is something like C:\Users\MY_ACCOUNT\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup.

    At next startup, Windows will run the thing for you, and copy the JDK 1.6 from C:\tools\jdk1.6 into N:\(which is the newly created ram disk) in my example, you may have to changes the paths.

    Then following the steps in the article you just need to set the good path in eclipse.ini

    Cheers, and welcome in the IT 🙂

  85. Neerav Pandya on Sun, 12th Feb 2012 12:20 am
  86. Thanks a ton!

    I had downloaded eclipse indigo and it was taking 7+ min to load and another 2+ min to configure viz: building workspace, indexes etc all in all about 10 min
    I followed
    Adding to whitelist of the antivirus
    Modifying the ini
    And removing every thing from validation except classpath; and leaving only 3 items in the startup and shutdown.
    Now the load time is about 2 mins and another 30 sec for configuration.
    I am not comfortable with the ramdisk option (actually I don’t know how to do it exactly) Is there any other way I could improve the load time to about under 1 min.
    Thanks for the help.

  87. KingCrunch on Thu, 19th Apr 2012 7:51 pm
  88. Just read the title and thought “rofl” 😀

    Imagine how fast a (originally) fast IDE can be with your “tipps” 😀

  89. c0smic on Tue, 1st May 2012 2:27 pm
  90. Great article! Implementing some of the tips now. I’m interested in running the JVM on a RAMdisk, that is when I get some mroe RAM..

  91. CDTU on Tue, 1st May 2012 7:43 pm
  92. Using /ramdisk and place both Java and Eclipse there, then run from /RAM it would be a good way to speed up the Eclipse.
    I have exteded what /euler said initially (thanks !) and I assembled a /batch script which is offering me all automatized: 1st start, then all consequently restarted of Eclipse within the same OS session. Of course it may be improved.
    Here your are: 1) batch script; 2) eclipse.ini
    0) install
    1) batch script:
    @echo off
    echo ===============================
    echo Starting Eclipse …
    echo ===============================
    CHOICE /C 1NC /M “Press 1 for 1st START, N for Normal start or C for Cancel.”

    echo ===============================
    echo 1) Starting ImDskSvc …
    wmic service ImDskSvc call startservice

    echo ===============================
    echo 2) Creating RAM disk N:\ …
    imdisk -a -t vm -s 550m -m n:

    echo ===============================
    echo 3) Formatting disk N:\ …
    format n: /FS:NTFS /V:RAMDISK /Q /Y

    echo ===============================
    echo 4) Copying Java to N:\ …
    xcopy “C:\Program Files\Java” “N:\Java” /E /V /C /Q /Y /I

    echo ===============================
    echo 5) Copying Eclipse to N:\ …
    xcopy “C:\Program Files\eclipse-SDK-4.2M6-win32” “N:\eclipse-SDK-4.2M6-win32” /E /V /C /Q /Y /I

    echo ===============================
    echo 5) Copying eclipse.ini configuration file to N:\ …
    copy “C:\Program Files\eclipse-SDK-4.2M6-win32\eclipse.ini.n” N:\eclipse-SDK-4.2M6-win32\eclipse.ini


    echo ===============================
    call “N:\eclipse-SDK-4.2M6-win32\eclipse.exe”

    echo This is the end of the script …

    2) eclipse.ini.(n)

    The output of option 1) – 1st start:
    Starting Eclipse …
    Press 1 for 1st START, N for Normal start or C for Cancel. [1,N,C]?1
    1) Starting ImDskSvc …
    Executing (\\HP530\ROOT\CIMV2:Win32_Service.Name=”ImDskSvc”)->startservice
    Method execution successful.
    Out Parameters:
    instance of __PARAMETERS
    ReturnValue = 0;

    2) Creating RAM disk N:\ …
    Creating device…
    Created device 0: n: -> VM image
    Notifying applications…
    3) Formatting disk N:\ …
    The type of the file system is RAW.
    The new file system is NTFS.
    QuickFormatting 524M
    Creating file system structures.
    Format complete.
    524.5 MB total disk space.
    519.7 MB are available.
    4) Copying Java to N:\ …
    625 File(s) copied
    5) Copying Eclipse to N:\ …
    2344 File(s) copied
    5) Copying eclipse.ini configuration file to N:\ …
    1 file(s) copied.

    Java used:
    java version “1.6.0_31”
    Java(TM) SE Runtime Environment (build 1.6.0_31-b05)
    Java HotSpot(TM) Client VM (build 20.6-b01, mixed mode, sharing)

    Eclipse used:

    […] you feel Eclipse does not start quick enough, you might try these optimizations. I noticed some speed improvements after applying them, but note that your mileage may vary. […]

  93. seomasterplace on Sun, 27th May 2012 11:14 am
  94. I gathered Good information with the help of this article, thank you for your super fast IDE poast.

  95. haskter on Fri, 15th Jun 2012 9:20 pm
  96. A better optimization method is to get rid of Eclipse and use Netbeans instead

  97. Imdisk virtualbox | Zuicom on Thu, 21st Jun 2012 3:52 am
  98. […] 5 steps to speed up your eclipse as a super fast IDE | David Euler on …Jun 25, 2011 … How to automate virtual machine creation and runing on virtualbox by … Then set the ImDisk driver to auto-load at Command Prompt with … […]

  99. MightyPork on Tue, 3rd Jul 2012 4:18 pm
  100. The ini modification works like char for Juno. Thank you!

  101. stefano rago on Tue, 14th Aug 2012 10:04 pm
  102. Thank you so much for that 😉

  103. Frank on Wed, 19th Dec 2012 8:25 pm
  104. For Eclispe Juno (4.2.0 and 4.2.1) I recommend to apply the following patch so that the XML editor gets faster:

  105. Rudy D'hauwe on Sun, 11th Aug 2013 4:43 am
  106. Thanks for the sharing! I personally ended up installing my entire development environment including the JDK and Eclipse on a RAM drive. Eclipse now starts in under 10 seconds! I documented my approach here: