From Zero to Hero: Benchmarking code in .NET

Source: https://dometrain.com/course/from-zero-to-hero-benchmarking-code-in-dotnet/

Writing homegrown benchmarks in .NET often leads to inaccurate measurements skewed by JIT compilation, garbage collection, and environmental noise. This course teaches you how to accurately measure and analyze .NET code performance using BenchmarkDotNet, built up from first principles. You’ll start with the fundamentals of the benchmark lifecycle and structure, before moving into establishing baselines, controlling jobs, and configuring power plans. From there, we’ll cover how to feed data into your benchmarks using Arguments and Params, and how to properly interpret the output by analyzing standard columns, handling outliers, and identifying multi-modal results. You’ll also learn how to directly compare different .NET runtimes and third-party library versions side by side.

Next, we’ll go under the hood to explore deep runtime diagnostics. You’ll track down hidden allocations using the MemoryDiagnoser, measure the overhead of thrown exceptions, and analyze parallelization and synchronization behavior with the ThreadingDiagnoser. We will also cover specialized profilers like the EtwProfiler, DisassemblyDiagnoser, and InliningDiagnoser to see exactly how the runtime executes your code. From there, you’ll learn how to tune the engine for accuracy by configuring garbage collector modes, JIT compiler selection, and Native AOT. Finally, you’ll master customizing the framework itself with custom columns, exporters, and analysers, before applying these techniques to practical scenarios like comparing EF Core versions and detecting performance regressions.

image

image

image

image

It’s not my rip



Download Links

Password: cms.ddpanda.org

Enjoyed this post?

If this article helped you, consider supporting my work.

Support 🐼