-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
[android] update AOT profile for .NET 9 GA #25509
Conversation
There are very few changes as this point, but recording a new profile shows a few changes, and maybe improvement by a very small amount: Before: Average(ms): 450.1 Std Err(ms): 3.53537676760043 Std Dev(ms): 11.1798429724611 After: Average(ms): 448.6 Std Err(ms): 2.54383787044519 Std Dev(ms): 8.04432166879912 This is an average of 10 runs on a `dotnet new maui` template on a Pixel 7 Pro. It might be effectively *the same*, but it's worth updating I suppose.
void Microsoft.Maui.Controls.Generated.GeneratedBindingInterceptors:SetBinding1138676086 (Microsoft.Maui.Controls.BindableObject,Microsoft.Maui.Controls.BindableProperty,System.Func`2<Microsoft.Maui.Controls.BaseShellItem, Microsoft.Maui.Controls.ImageSource>,Microsoft.Maui.Controls.BindingMode,Microsoft.Maui.Controls.IValueConverter,object,string,object,object,object) | ||
void Microsoft.Maui.Controls.Generated.GeneratedBindingInterceptors:SetBinding114022620 (Microsoft.Maui.Controls.BindableObject,Microsoft.Maui.Controls.BindableProperty,System.Func`2<Microsoft.Maui.Controls.BaseShellItem, string>,Microsoft.Maui.Controls.BindingMode,Microsoft.Maui.Controls.IValueConverter,object,string,object,object,object) | ||
void Microsoft.Maui.Controls.Generated.GeneratedBindingInterceptors:SetBinding1635156915 (Microsoft.Maui.Controls.BindableObject,Microsoft.Maui.Controls.BindableProperty,System.Func`2<Microsoft.Maui.Controls.BaseShellItem, Microsoft.Maui.Controls.ImageSource>,Microsoft.Maui.Controls.BindingMode,Microsoft.Maui.Controls.IValueConverter,object,string,object,object,object) | ||
void Microsoft.Maui.Controls.Generated.GeneratedBindingInterceptors:SetBinding570983195 (Microsoft.Maui.Controls.BindableObject,Microsoft.Maui.Controls.BindableProperty,System.Func`2<Microsoft.Maui.Controls.BaseShellItem, string>,Microsoft.Maui.Controls.BindingMode,Microsoft.Maui.Controls.IValueConverter,object,string,object,object,object) | ||
void Microsoft.Maui.Controls.Generated.GeneratedBindingInterceptors:SetBinding1310226827 (Microsoft.Maui.Controls.BindableObject,Microsoft.Maui.Controls.BindableProperty,System.Func`2<Microsoft.Maui.Controls.BaseShellItem, Microsoft.Maui.Controls.ImageSource>,Microsoft.Maui.Controls.BindingMode,Microsoft.Maui.Controls.IValueConverter,object,string,object,object,object) | ||
void Microsoft.Maui.Controls.Generated.GeneratedBindingInterceptors:SetBinding1361557553 (Microsoft.Maui.Controls.BindableObject,Microsoft.Maui.Controls.BindableProperty,System.Func`2<Microsoft.Maui.Controls.BaseShellItem, string>,Microsoft.Maui.Controls.BindingMode,Microsoft.Maui.Controls.IValueConverter,object,string,object,object,object) | ||
void Microsoft.Maui.Controls.Generated.GeneratedBindingInterceptors:SetBinding1463606174 (Microsoft.Maui.Controls.BindableObject,Microsoft.Maui.Controls.BindableProperty,System.Func`2<Microsoft.Maui.Controls.BaseShellItem, Microsoft.Maui.Controls.ImageSource>,Microsoft.Maui.Controls.BindingMode,Microsoft.Maui.Controls.IValueConverter,object,string,object,object,object) | ||
void Microsoft.Maui.Controls.Generated.GeneratedBindingInterceptors:SetBinding57528121 (Microsoft.Maui.Controls.BindableObject,Microsoft.Maui.Controls.BindableProperty,System.Func`2<Microsoft.Maui.Controls.BaseShellItem, string>,Microsoft.Maui.Controls.BindingMode,Microsoft.Maui.Controls.IValueConverter,object,string,object,object,object) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just curious, @simonrozsival @jkurdek are the names like SetBinding1310226827
deterministic? Is it a hash of some kind?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, it's a hash of the location
maui/src/Controls/src/BindingSourceGen/BindingSourceGenerator.cs
Lines 42 to 49 in d541b54
context.RegisterImplementationSourceOutput(bindings, (spc, binding) => | |
{ | |
var fileName = $"{binding.Location.FilePath}-GeneratedBindingInterceptors-{binding.Location.Line}-{binding.Location.Column}.g.cs"; | |
var sanitizedFileName = fileName.Replace('/', '-').Replace('\\', '-').Replace(':', '-'); | |
var code = BindingCodeWriter.GenerateBinding(binding, (uint)Math.Abs(binding.Location.GetHashCode())); | |
spc.AddSource(sanitizedFileName, code); | |
}); | |
} |
There are very few changes as this point, but recording a new profile shows a few changes, and maybe improvement by a very small amount:
This is an average of 10 runs on a
dotnet new maui
template on a Pixel 7 Pro.It might be effectively the same, but it's worth updating I suppose.
Fixes #25403