diff options
author | Noah Falk <noahfalk@users.noreply.github.com> | 2018-03-28 13:56:24 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-03-28 13:56:24 -0700 |
commit | 9c32fda3feb190f60934ffc0de7a328e0506e367 (patch) | |
tree | 2c557dd07e716c500fe06770ffc8f7d3dab6ed60 /src/vm | |
parent | a79ca6566567188a408cfcf4859286fc87e5c449 (diff) | |
download | coreclr-9c32fda3feb190f60934ffc0de7a328e0506e367.tar.gz coreclr-9c32fda3feb190f60934ffc0de7a328e0506e367.tar.bz2 coreclr-9c32fda3feb190f60934ffc0de7a328e0506e367.zip |
Removing 'EXPERIMENTAL' from tiered compilation env var (#17283)
Things have progressed far enough that its time to use a friendlier name. The feature still still has performance aspects that need to be investigated and improved, but I don't want to scare people off simply because it isn't as fast as it could be.
This also updates to use a newer CoreFX version for JitBench since that appeared to be broken, and updated some comments and usage of the tieredcompilation variable.
Diffstat (limited to 'src/vm')
-rw-r--r-- | src/vm/eeconfig.cpp | 5 | ||||
-rw-r--r-- | src/vm/tieredcompilation.cpp | 18 |
2 files changed, 9 insertions, 14 deletions
diff --git a/src/vm/eeconfig.cpp b/src/vm/eeconfig.cpp index ab83463256..a227437356 100644 --- a/src/vm/eeconfig.cpp +++ b/src/vm/eeconfig.cpp @@ -1240,7 +1240,10 @@ HRESULT EEConfig::sync() dwSleepOnExit = CLRConfig::GetConfigValue(CLRConfig::UNSUPPORTED_SleepOnExit); #if defined(FEATURE_TIERED_COMPILATION) - fTieredCompilation = CLRConfig::GetConfigValue(CLRConfig::UNSUPPORTED_TieredCompilation) != 0; + fTieredCompilation = CLRConfig::GetConfigValue(CLRConfig::EXTERNAL_TieredCompilation) != 0 || + //this older name is deprecated, but still accepted for a time. Preserving it is a very small overhead not to needlessly break things. + CLRConfig::GetConfigValue(CLRConfig::UNSUPPORTED_LEGACY_TieredCompilation) != 0; + tieredCompilation_tier1CallCountThreshold = CLRConfig::GetConfigValue(CLRConfig::UNSUPPORTED_TieredCompilation_Tier1CallCountThreshold); if (tieredCompilation_tier1CallCountThreshold < 1) diff --git a/src/vm/tieredcompilation.cpp b/src/vm/tieredcompilation.cpp index cd571a6b47..f139ddea5c 100644 --- a/src/vm/tieredcompilation.cpp +++ b/src/vm/tieredcompilation.cpp @@ -22,19 +22,11 @@ // // # Current feature state // -// This feature is incomplete and currently experimental. To enable it -// you need to set COMPLUS_EXPERIMENTAL_TieredCompilation = 1. When the environment -// variable is unset the runtime should work as normal, but when it is there are a few -// known issues -// ETW - Native to IL maps aren't correctly emitted (probably tier1 wrong, tier0 right) -// Profiler - Still missing APIs that allow profilers to correctly get native to IL -// maps for all code bodies. -// -// Diagnostic tools have minimal testing that we are aware of and its possible they -// made additional assumptions about runtime implementation that have been invalidated -// by this feature. VS debugging does appear to work at a basic level at least. -// -// I aim to keep this comment updated as things change. +// This feature is a work in progress. It should be functionally correct for a +// good range of scenarios, but performance varies by scenario. To enable it +// you need to set COMPLUS_TieredCompilation = 1. This feature has been +// tested with all of our runtime and CoreFX functional tests, as well as +// diagnostics tests and various partner testing in Visual Studio. // // // # Important entrypoints in this code: |