-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ci: use much faster D: drive for TEMP on Windows #13129
base: main
Are you sure you want to change the base?
Conversation
This is apparently an inherent limitation of Azure (which powers GHA) which uses a slow C: drive for the OS (read-optimized) and a fast D: drive for working space.
h/t to @ichard26 in this pip PR: pypa/pip#13129
The script |
@pfmoore Sorry there's a lot of context I forgot to include. The Dev Drive PR is out of date. The final Dev Drive patch I tested is included on this branch: https://github.com/pypa/pip/tree/refs/heads/d-drive (specifically 483859b). In that version, the VHDX is created on the D: drive as best for performance. Lines 25 to 26 in 483859b
As well, it is true that Dev Drives aren't supported on the current Windows 2019 runners. I wrote in that check 🙂. However, I was talking to Steve Dower and he said that simply using a ReFS drive should get you 90% of the way there:
If you look at the run I linked earlier (which is hard to read admittedly), you'll notice that last unit/integration test steps are done on the ReFS drive, while the first test steps are done on the D: drive. The D: drive beats the ReFS drive on D: handily. |
This is apparently an inherent limitation of Azure (which powers GHA) which uses a slow C: drive for the OS (read-optimized) and a fast D: drive for working space.
I first thought a Dev Drive would be even faster (#13123), after a lot of testing, it seems to be slower than simply moving TEMP to the D: drive. To prove this, I did a run where the entire test suite was run back to back three times:
TEMP=D:/Temp
TEMP=C:/Temp
aka the status quo on main