Skip to content
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

Experiment: access UE from a VHDX instead of a ZIP. #1450

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from
Draft

Experiment: access UE from a VHDX instead of a ZIP. #1450

wants to merge 2 commits into from

Conversation

kring
Copy link
Member

@kring kring commented Jun 10, 2024

Currently we download Unreal Engine from S3 in a ZIP file, and then extract it. The download is pretty fast (about a minute), but unzipping takes much longer. So this is an experiment to see if we can make our CI go faster by downloading a VHDX instead. The VHDX uses NTFS compression, so it's reasonably small, but still much bigger than the ZIP. (ZIP is 14 GB, VHDX is 24 GB). But once we have a VHDX locally, we can mount it directly; no need to spend time unzipping the whole thing.

@kring
Copy link
Member Author

kring commented Jun 10, 2024

Well, this certainly makes the UE install faster. 2m43s in this branch, versus 8m5s in the most recent main build. The plugin build itself was 1m17s slower in this branch. That's probably within the normal variability of Unreal plugin builds, so hard to say if it's significant (though a little overhead from the on-the-fly decompression is to be expected with this PR). Overall the whole process was about 4 minutes faster in this PR. Another upside of this PR is that it requires significantly less disk space to be available on the runner. But one downside is that the bigger size of the VHDX versus the ZIP means we're going to pay more in data transfer costs from S3. At least until we move the UE distributions to Azure, which should drive the cost to zero, because then the transfers will be within the same cloud.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant