Windows developers: have you tried "dev drive"?

I’ve just noticed a windows feature called “dev drive”, which uses a separate partition for development, using ReFS instead of NTFS and has other optimisations for software development: Set up a Dev Drive on Windows 11 | Microsoft Learn

Has anyone here tried this for meteor development?
Did you notice any improvement?
Did you also move node/npm into the Dev Drive? (although meteor uses it’s own node/npm so maybe this isn’t as beneficial for meteor? Although the meteor tool is still in the global npm folder…)

If I can find some time I might have a play, and do some before/after benchmarks…

1 Like

I’ve had time for a quick play, and the results are positive, but it’ll take a while to regain the time I’ve spent playing with this :wink:

The process was very smooth. You’re given the option to resize a partition or create a VFS on top of an existing drive. VFS is supposedly a little slower, but can be resized more easiy. My 512 GB SSD had nearly 300 GB still available, so I decided to resize the partition, creating 100 GB Dev Drive.

The resizing and formatting process only took about 1 minute - much quicker than I was expecting.

Instead of copying my projects across, I re-cloned them from git and started from scratch. Note that so far I haven’t moved node/npm across to the dev drive.

Here’s the results. In each of these tests I performed the action several times until the time taken reached a steady state (initial builds were slower), then took an average of the last three steady state timings. I just used a stopwatch on my phone (no video recording), so this isn’t particularly accurate:

Meteor App 1 (meteor 2.16) - build - 7.5s faster (20%)
(npm start to running)

Before: 39.1, 36.5, 36.3 → average 37.3s
After:  29.0, 30.2, 30.1 → average 29.8s

Meteor App 1 re-build - 2.5s faster (18%)
(after changing a single character in one file and saving)

Before: 14.8, 13.8, 13.7 → average 14.1s
After:  13.7, 10.6, 10.6 → average 11.6s

Meteor App 2 (meteor 1.9!) - build - 3.4s faster (11%)
(npm start to running)

Before: 32.9, 31.2, 30.9 → average 31.7s
After:  28.6, 28.2, 28.1 → average 28.3s

Meteor App 2 - rebuild - 0.6s faster (6%)
(after changing a single character in one file and saving)

Before: 8.3, 7.8, 7.5 → average 7.9s
After:  7.3, 7.4, 7.1 → average 7.3s

I also have an Angular/Express.js app which I spend a lot of time on, so time savings here will add up:

Angular App - Frontend dev build - 4.2s faster (20%)
(npm start to running)

Before: 21.8, 20.6, 20.6 → average 21.0s
After:  17.0, 16.7, 16.8 → average 16.8s

Angular App - Frontend dev re-build - 1.2s faster (40%)
(after changing a single character in one file and saving)

Before: 4.1, 2.8, 2.2 → average 3.0s
After:  1.9, 1.8, 1.8 → average 1.8s

Node.js express backend app build - 0.2s faster (2%)
(npm start to running)

Before: 9.3, 9.3, 10.0 → average 9.5s
After:  9.2, 9.3, 9.3 → average 9.3s

Node.js express backend app re-build - 0.1s faster (1%)
(after changing a single character in one file and saving)

Before: 8.1, 8.3, 8.5 → average 8.3s
After:  8.2, 8.2, 8.2 → average 8.2s

I spend most of my time in the “Meteor App 1” and “Angular App”, and I like to make incremental changes and try them in the browser, so shaving 1.2 to 2.5 seconds off each re-build will eventually add-up :sweat_smile:

1 Like