Comment Re:Recoverable Failure rate: 99.9% HDD, 1% SSD (Score 1) 512
If recovering from backup and the backup isn't quite up to date I'd probably try some kind of data recovery, but I wouldn't want to rely on it.
Compiling is almost ALWAYS IO bound for a project of any size. Why do you think make -j 4 or make -j 8 makes a noticeable difference on even single core machines? Because the compiler spends most of its time waiting on disk IO, reading and writing all those intermediate files.
From my experience when I toyed around with Gentoo a few years ago, make -j worked best when the number provided was {core count + 1}. Any more than that and it slowed down due to context switching overhead and/or disk head thrashing.
VisualStudio also supports parallel compilers for this exact same reason.
It has severe limitations. It doesn't work when you need to import TLB files, it does not work with incremental rebuilds, and it doesn't play particularly nicely with precompiled headers. The former is required for our project to build at all, and the latter 2 improve productivity more than using multiple threads (YMMV).
Happiness is twin floppies.