Skip to content

Make baselines faster by not writing out unneeded files #10213

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

Merged
merged 3 commits into from
Aug 17, 2016

Conversation

RyanCavanaugh
Copy link
Member

Two changes here

The first is to not write out baseline files to /local when the content is already identical to what's in /reference. Instead, we write out new files when they've changed, and write .delete files when the file exists in /reference but not in /local

The second is to update the baseline-accept tasks to simply copy with overwrite, plus treat .delete files specially so they delete the destination file. These are now basically "soft by default" so you can run arbitrary subsets of tests and baseline-accept without having to worry about nuking your reference folder.

Locally, these brought the total time to run the 'conformance' suite from 1m33s to 0m54s. Might even be a bigger gain on non-SSD machines (not sure what travis is using).

@RyanCavanaugh RyanCavanaugh self-assigned this Aug 11, 2016
@RyanCavanaugh
Copy link
Member Author

🔔

@weswigham
Copy link
Member

👍 if you're satisfied with it. I don't see any issues. We could probably do even better if we just wrote all the files-to-delete out to a single manifest file all at once (rather than a smattering of .delete files), but that needn't be considered in this PR.

@mhegazy
Copy link
Contributor

mhegazy commented Aug 17, 2016

👍

@RyanCavanaugh RyanCavanaugh merged commit bf63811 into microsoft:master Aug 17, 2016
@RyanCavanaugh RyanCavanaugh deleted the baselinePerf branch August 17, 2016 18:13
@HerringtonDarkholme
Copy link
Contributor

I have run jake rutests locally and cannot get diff by jake diff. It seems jake will always remove local baseline and no diff can be produced.

@microsoft microsoft locked and limited conversation to collaborators Jun 19, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants