Due to requirements of a JEE project I am currently working on I am frequently having to perform a full clean and build compilation cycle on the project code within Netbeans. Needless to say this can consume quite a bit of time, usually 2 minutes+, and when I mention that I may compile 10-15 times an hour you can see the problem...
I'm fortunate to have a fairly hefty development PC (Intel Core 2 Quad @ 2.40GHz, 4 Gb Corsair RAM, 150Gb WD Velociraptor HD), and after a quick investigation I identified the slowest link in the compilation chain was the physical manipulation/transfer of data on the HD (litterally thousands of files being created and destroyed per build)
I've been hearing good things about the current breed of Solid State Drives (SDD) and so I decided to purchasea Samsung SSD - SAMSUNG PB22-J 128GB 2.5" SATA-II MLC SOLID STATE HARD DRIVE - thinking this would speed up compilation...
The Results?
There is no denying that the general performance of the PC and Windows improved dramatically - Vista booted in half of the time, applications (including Netbeans) opened much faster, and so all was good?
Not exactly... Although my development environment became more responsive, and localhost servers started much faster, the actual compilation process became slower... yep that's right, cleaning and building became much slower!
A build (no clean) was sometimes faster than before, but sometimes up to 30 seconds longer when performing other tasks (which didn't used to affect compilation time). A full clean and build took up to 4 times longer than before - sometimes over 10 minutes!!
As you can imagine I wasn't best pleased, and after a bit more thorough research on the web I have learned that although SSD are much faster for reading large blocks of data and even locating small amounts of data rapidly, many drives are not suitable for reading/writing small files concurrently due limitations in the drive controller (source: http://www.wysk.info/?p=56) Of course, reading and writing multiple small files is exactly what happens when compiling - d'oh!!
Hence I have reinstalled my Velociraptor....
Summary
In a nutshell if you want to improve your HD performance when compiling:
- Utilise with a Velociraptor HD - if you are gonna stick with a mechanical drive, this is the best you can get (I was being greedy by thinking an SSD could be better
) - If you really want to go the SSD route, make sure you spend some extra cash on getting a drive with a good controller, such as the Intel X25-M
- Maybe get extra system RAM and utilise a RAM-drive http://coffeecokeandcode.blogspot.com/2008/08/netbeans-on-speed.html I'm off to try this now...
Additional Resources
- Has anybody tried to build NetBeans on an SSD drive? http://forums.netbeans.org/topic4011.html
- NetBeans on speed http://coffeecokeandcode.blogspot.com/2008/08/netbeans-on-speed.html
- Can SSDs Be Used For Software Development? http://ask.slashdot.org/article.pl?sid=09/03/06/191219
- Why cheap SSD sucks for Visual Studio http://www.wysk.info/?p=56
I hope this helps, and if it does please let me know!!
Daniel
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Daniel Bryant (Director) | Tai-Dev Ltd www.tai-dev.co.uk - IT Consultancy Services Specialising in JEE, Web 2.0 and RDBMS

