Visual Studio loves file I/O. It really, really does, and it cares very little about caching and the like. What this means is that, when you open a solution file, it always reads it from disk. Which means that the speed of operation when generating lots of files (e.g., via T4 transformations) is typically atrocious. The fact that file I/O in VS does not appear to be multithreaded is another hindrance. In short, it’s a mess.

So here’s a stupid solution that I’ve been using for ages with excellent results – make a RAM disk! By sacrificing a small amount of RAM (I give it 128Mb), you can move your whole solution into RAM, where I/O speeds are far greater – noticeably greater when working with Visual Studio.

To get a RAM disk working, I followed advice on this page to the letter, and got it all set up under Vista. Then, when I need to, I simply snapshot my Subversion projects onto the RAM drive and do my work. If the stuff I work on is sensitive, I can even erase the RAM drive after work – committing beforehand, of course.