ReadyToRun и Crossgen2: AOT-компиляция в .NET

Привет! Разберём ReadyToRun (R2R) — технологию предкомпиляции в .NET. Многие включают её, надеясь на супер ускорение, а потом удивляются результатам. Посмотрим, как это работает на самом деле и где реально помогает. ReadyToRun — это AOT-компиляция для .NET. Обычно приложение поставляется в IL-коде, который JIT превращает в машинный код во время выполнения. R2R компилирует код заранее при публикации проекта — в итоговых DLL лежит и IL, и готовые машинные инструкции. При запуске CLR просто берёт нативный код без пауз на компиляцию. Как это работает

https://habr.com/ru/companies/otus/articles/977080/

#C# #ReadyToRun #Crossgen2 #AOTкомпиляция #производительность_приложений #оптимизация_кода

ReadyToRun и Crossgen2: AOT-компиляция в .NET

Привет! Разберём ReadyToRun (R2R) — технологию предкомпиляции в .NET. Многие включают её, надеясь на супер ускорение, а потом удивляются результатам. Посмотрим, как это работает на самом деле и где...

Хабр

Der Cursor blinkt, mein ♥️ auch. Vintage Liebe Deluxe mit dem PET-Emulator.

https://www.masswerk.at/pet/

Danke Norbert Landsteiner von Masswerk.

#CommodorePET #BASIC #EmulatorLove #POKEmeBaby #ReadyToRun #VintageVibes #DigitalArcheology #masswerk

Commodore PET 2001

An online emulator of the Commodore PET 2001 computer.

Confira a letra da música “Ready To Run” de One Direction
#OneDirection #ReadyToRun
https://daletra.com.br/one-direction/letra/ready-to-run.html
Ready To Run - One Direction

There's a lightning in your eyes, I can't deny. Then there's me inside a sinking boat. Running out of time. Without you, I'll never make it out alive.

DaLetra
Veja a letra da música “Ready To Run” de One Direction
#OneDirection #ReadyToRun
https://daletra.com.br/one-direction/letra/ready-to-run.html
Ready To Run - One Direction

There's a lightning in your eyes, I can't deny. Then there's me inside a sinking boat. Running out of time. Without you, I'll never make it out alive.

DaLetra
Twenty-four years ago in my music history, "Fly" became The Chicks' second RIAA-certified quintuple-platinum album. #MusicIsLife #ReadyToRun

This will be though.

Well, I can certainly build #PowerShell for #FreeBSD now. I might be able to just "fake" a #git working copy for its stupid build system. This still doesn't fully solve the version issue, it insists on appending the git hash -> TODO.

The "login shell" feature can be added, an exercise left for later, the code will look pretty similar to the existing MacOS-X implementation. Maybe upstream would even accept it 😎

For a #port, it should probably be "published" as "#ReadyToRun" (I hope this has no negative impact), otherwise lang/dotnet would become a hard run dependency ... This works now as well, but requires changes in lang/dotnet ... requires some platform-specific #NuGet packages that don't exist on MS servers for FreeBSD. They are created during build of dotnet itself, but not installed anywhere by default ... I'll suggest an "on by default" port option to bundle these with lang/dotnet.

[…]

If application startup time & latency is an issue the new ReadyToRun format for your application. ReadyToRun is an Ahead-of-Time (AOT) compilation.
Due to the fact that R2R assemblies won't require JIT work when assembly is loaded. ReadyToRun application contain both Native and Manged code as the last one can be used for certain scenarios

To produce ReadyToRun code we need to pass an extra parameter when publishing platform-specific application version. See attached example image 👇

Docs 📑: https://learn.microsoft.com/en-us/dotnet/core/deploying/ready-to-run

#dotnet #deployment #publishing #aheadoftime #readytorun

---
If you find this useful, consider giving a like & share ❤.

ReadyToRun deployment overview - .NET

Learn what ReadyToRun deployments are and why you should consider using it as part of the publishing your app with .NET 5 and .NET Core 3.0 and later.

All in TUXEDO One:
Eight cores, 64GB RAM, GTX graphics, ultra silent cooling - and of course #Linux preinstalled!
https://www.tuxedocomputers.com/de/Linux-Hardware/Linux-Computer-/-PCs/AMD.tuxedo #Ryzen #Ubuntu #ReadyToRun
AMD-Systeme - alle Geräte mit AMD CPUs NVIDIA Grafik - AMD-Systeme - TUXEDO Computers

AMD-Systeme: AMD-Systeme - alle Geräte mit AMD CPUs NVIDIA Grafik