You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The default tiering strategy is quite obscure and it's not obvious how to make a small console repro to show a Tier1 codegen for a method without disabling TC completely. DOTNET_TC_AggressiveTiering=1 was desinged to help with that, but it's still not working as expected, example:
using System.Runtime.CompilerServices;publicclassProg{staticvoidMain(){for(inti=0;i<10000000;i++)
Test();}[MethodImpl(MethodImplOptions.NoInlining)]staticvoidTest(){}}
Even with DOTNET_TC_AggressiveTiering=1 we never end up requesting a recompilation for Test and it stays in Tier0. I think, with DOTNET_TC_AggressiveTiering we should install call-counting stub synchrously without a delay/timer, so even:
using System.Runtime.CompilerServices;publicclassProg{staticvoidMain(){for(inti=0;i<2;i++)
Test();}[MethodImpl(MethodImplOptions.NoInlining)]staticvoidTest(){}}
should print a Tier1 version (or at least, Tier0-instrumented) of Test
The text was updated successfully, but these errors were encountered:
The default tiering strategy is quite obscure and it's not obvious how to make a small console repro to show a Tier1 codegen for a method without disabling TC completely.
DOTNET_TC_AggressiveTiering=1
was desinged to help with that, but it's still not working as expected, example:Even with
DOTNET_TC_AggressiveTiering=1
we never end up requesting a recompilation forTest
and it stays in Tier0. I think, withDOTNET_TC_AggressiveTiering
we should install call-counting stub synchrously without a delay/timer, so even:should print a Tier1 version (or at least, Tier0-instrumented) of
Test
The text was updated successfully, but these errors were encountered: