Use newest PGO data for Linux and windows-x86#51656
Conversation
This data was previously held back because we weren't producing builds with Linux or windows-x86 but now we are. The Linux builds now also only produce a single profdata file, coreclr.profdata, which should contain all the profile information for all the libraries in the runtime.
|
I couldn't figure out the best area label to add to this PR. If you have write-permissions please help me learn by adding exactly one area label. |
brianrob
left a comment
There was a problem hiding this comment.
LGTM. Am I correct that with this change, if the PGO data doesn't get downloaded properly that the build will fail? If so, that is a good change.
|
@brianrob In my local testing, yes, that's the behavior. |
…, Linux, OSX, and not ARM32/64
davidwrighton
left a comment
There was a problem hiding this comment.
Unfortunately, we need to allow for builds that do not have pgo data.
In particular source builds do not use pgo on any platform, and this is encoded in the logic where we don't attempt to restore pgo data on those builds, and the logic in cmake where missing pgo data is tolerated.
|
Change reverted, but I wonder if we could just have source build pass -nopgooptimize or something. |
|
Official builds pass an |
|
Looks like there's something busted here with the MSBuild win-x86 instrumentation. I'll try to figure out what's different. |
|
DrewScoggins/performance-2#5369 We saw some major improvements in Crossgen scenarios, about 8%. |
This data was previously held back because we weren't producing
builds with Linux or windows-x86 but now we are. The Linux builds
now also only produce a single profdata file, coreclr.profdata,
which should contain all the profile information for all the
libraries in the runtime.