Can SSDs Be Used For Software Development?
hackingbear writes "I'm considering buying a current-generation SSD to replace my external hard disk drive for use in my day-to-day software development, especially to boost the IDE's performance. Size is not a great concern: 120GB is enough for me. Price is not much of a concern either, as my boss will pay. I do have concerns on the limitations of write cycles as well as write speeds. As I understand, the current SSDs overcome it by heuristically placing the writes randomly. That would be good enough for regular users, but in software development, one may have to update 10-30% of the source files from Subversion and recompile the whole project, several times a day. I wonder how SSDs will do in this usage pattern. What's your experience developing on SSDs?"
If you're not good enough at arithmetic to understand that this isn't an issue, should you really be developing software?
I've had this sig for three days.
I'm using the Intel SSD and I think it's great - fast and silent. Will it last? I'd argue you never know about any particular model of hard drive or SSD until a few years after it is released. On the other hand, I'd also argue it doesn't matter much. Say one drive has a 3% failure rate in the 3rd year and another has a 6% rate. That's a huge difference percentage-wise (100% increase). And yet it's only a 3% extra risk - and, most importantly, you need a backup either way.
If they're good enough for Databases (frequent writes), they should be just fine for devel.
OTOH, You should be a lot more concerned about losing data because of a) software bugs or b) mechanical failures in a conventional drive
The Raven
Yes, a SSD can be used for development.
A better question to ask is should you use a SSD for development.
Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
You do back up your work, don't you? You know, in case it's lost, stolen, destroyed, etc.? An SSD going bad is hardly the only danger. So why not try out an SSD, and if you're especially worried, backup more frequently and keep more backups?
Intellectual Property is a monopolistic, selfish, and defective concept. It is "tyranny over the mind of man"
If you give your programmers an 8-way 4GHz m/b with 64GB of memory (if sucha thing exists yet), they'll use all the processing power in dumb, inefficient algorithms, just because the development time is reduced. While those of us in the real world have to get by on "normal" machines.
When we complain about poor performance, they just shrug and say "well it works fine on my nuclear-powered, warp-10, so-fast-it-can-travel-back-in-time" machine"
However, if they were made to develop the software on boxes that met the minimum recommended spec. for their operating system, they'd have to give some thought to making the code run efficiently. If it extended the development time and reduced the frequency of updates, well that wouldn't be a bad thing either.
politicians are like babies' nappies: they should both be changed regularly and for the same reasons
how many GB total the drive can write over its lifetime vs how much you produce each day
It's not as simple as that. Make a small change (insertion or deletion) near the beginning of a large source code file, and the entire file – from the edit onward – must be written over. Then, any source code file that has been modified must be read and built, overwriting the previous binary files for those source codes. Finally, all the binary files must be re-linked into the executable.
So you're not just writing ___ bytes of code. You're writing ___ bytes of code, re-writing ___ bytes of code because it followed code that was added or modified, and overwriting ___ of the object, library, debug, executable, etc. etc. files that are created when the project is built. In a large project that's probably in the order of megabytes. That is what TFS meant by:
in software development, one may have to update 10-30% of the source files from Subversion and recompile the whole project, several times a day. I wonder how SSDs will do in this usage pattern.
Alexander Peter Kristopeit bought his basement from his mommy for one dollar.
If price isn't an option, then he should get himself 4 ANS-9010's and set them up as a hardware RAID0 hanging off the back of good fast raid controller.
If he filled each of them with 4GB DIMMs he'd have 128GB of storage space.
Volatile? Hell yeah... But also just crazy fast...
Yes Francis, the world has gone crazy.
Now find a hard disk that'll last that long.
extern warranty;
main()
{
(void)warranty;
}
The best bet if your project is smaller than about 20GB is to buy a box full of ram and use a FAT32 formatted ramdrive. Orders of magnitude faster than even an SSD.
There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
Holy crap! If you think a developer needs 16G of RAM, you're NUTS!
Graphic artists and people editing videos need that kind of RAM, but a developer doesn't. I've got 2G of RAM in my machine and according to top, that's about twice what I use (and most of that is firefox and evolution). Granted, I don't use a heavy-weight IDE, but I hardly think Eclipse would require 14G of RAM to function (please correct me if I'm wrong).
*sigh* back to work...
If your main problem is speeding up your development environment's use of temporary disk storage (because Linux is already caching a lot), use /tmpfs, which stores the files in virtual memory, and if the system needs to page them out, it does that - it's really useful for files that are going to get created for short periods but don't need to get kept for long.
Windows Vista Readyboost is doing something fancy and semi-automatic with caching in USB flash disks - get yourself a USB2 memory stick and turn it on. The stuff is so cheap these days that you might as well buy a large fast ReadyBoost stick, but you'll probably get a lot of payoff even from adding small drives - 8GB is now $20-40, and 32GB is ~$60-120 depending on how extreme you want to get.
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
Where do you work? I had to piss and moan to get 2GB of RAM! I would kill for 16GB.
I think the better question is where do YOU work that 2GB was such an ordeal. 4GB of desktop ram is $50 at newegg. If you work in the US... it's a shitty tech environment. That said, I bought a 24" LCD 3 years ago for myself and brought it into work when I wanted one that match my home display :)
Virtual machines.
I have 3 running right now because I have two VPN connections to different networks using the Cisco VPN client, and another VM for testing client software on. Even then, I'm using just over half of the 4GB RAM the computer has.
Follow me