via @dotnet : .NET MAUI Moves to CoreCLR in .NET 11
https://ift.tt/kBL2ZRv
#dotnet11 #coreclr #dotnetmaui #maui #mobiledevelopment #net11preview4 #android #ios #mac Catalyst #xamarin #mono #unity #avalonia #unoPlatform #monogame #godot #nativeaot #r2r #pgo #dotn…
Профилирование и PGO в LLVM
Нередко при оптимизации приложений, написанных на языках со статической компиляцией (C, C++, Rust), наступает момент, когда стандартные методы оптимизации, такие как улучшение алгоритмов, подбор структур данных, флаги компиляции вроде -O3, перестают давать дополнительный прирост производительности. В этот момент многие вспоминают про фундаментальное ограничение статических компиляторов. В отличие от JIT, они не знают, какой код будет горячим, а какой холодным. JIT-компиляторы (JVM, V8, .NET) получают эту информацию в runtime и адаптируют оптимизации под реальную нагрузку. Статические компиляторы генерируют машинный код заранее и лишены информации о поведении программы в runtime. Для решения этой проблемы используется подход Profile Guided Optimization (PGO). Он позволяет собрать данные о выполнении программы и передать их компилятору для принятия более оптимальных решений при генерации кода. По сути, PGO - это способ дать статическому компилятору некоторые преимущества JIT, сохраняя при этом все преимущества ahead-of-time компиляции: отсутствие пауз на перекомпиляцию и полный контроль над билдом.
Perodua Unveils P-GO Smart Watch And P-Charge Mobility Charging Station #automotive #pchargemobility #peodua #pgo
和《Pokémon GO》一起「Take a GO!走出趣!」
https://pokemongo.com/post/tw-takeago2025