/awesome-dot-net-performance

A curated list of awesome .NET Performance books, courses, trainings, conference talks, blogs and most inspiring open source contributors. Inspired by awesome-... stuff.

MIT LicenseMIT

Awesome .NET Performance

A curated list of awesome .NET Performance books, courses, trainings, conference talks, blogs and most inspiring open source contributors. Inspired by awesome-... stuff.

Books

Video Courses

On-Site Trainings

Conference talks

Sorted from newest to oldest:

Blogs

Inspiring Open Source Contributors

Performance tools

Benchmarking

  • BenchmarkDotNet - Powerful .NET library for benchmarking.
  • NBench - Cross-platform performance benchmarking and testing framework for .NET applications.
  • xunit.performance - Provides extensions over xUnit to author performance tests.

Profiling

  • Prefix - Free lightweight profiler for ASP.NET apps shows everything your code is doing across 30+ common libraries
  • MiniProfiler - Free profiling tool for .NET applications with Entity Framework and ASP.Net integration (Core supported for both versions)
  • dotTrace - Paid profiler for .NET applications from the JetBrains team, included in the Resharper Ultimate package

Application Insights

  • App Metrics - App Metrics is an open-source and cross-platform .NET library used to record and report metrics within an application and reports it's health. See the docs for more details.

Load testing

  • JMeter - Free testing tool with lots of features for web request testing.
  • Netling - Free minimal load tester, simple URL request without cookies or parameters, easy to use.

High Performance Libraries

  • Mathematics
    • MathNet - Math.NET is an opensource initiative to build and maintain toolkits covering fundamental mathematics, targetting advanced but also every day needs of .Net developers.
    • Spreads - "Series and Panels for Real-time and Exploratory Analysis of Data Streams", a library for fast time series incremental calculations + SIMD-optimized byte-shuffling/LZ4/Zstd compression using Blosc library.
  • CPU Optimization
    • SIMD Array - SIMD and other Performance enhanced Array operations for F#.
    • NativeInterop - Generic pointers and native 64-bit arrays for .NET.
  • IO Optimization
    • Nessos Streams - A lightweight F#/C# library for efficient functional-style pipelines on streams of data.
    • Wire - A high performance polymorphic serializer for the .NET framework.
    • Disruptor-Net - .NET port of LMAX Disruptor, a faster alternative to BlockingCollection.
    • MPMCQueue.NET - Bounded multiple producers multiple consumers queue for .NET.
  • Collections
    • ImTools - Immutable persistent collections and helpers designed for performance and simplicity of use.
  • Parsing and Compiling
  • Inversion of Control frameworks
    • DryIoc - For the past years a fastest Dependency Injection library without sacrificing on functionality.
    • SimpleInjector - Fast Dependency Injection library that promotes best practice to steer developers towards the pit of success.

Article series

Benchmarking

Investigations

High-performance .NET by example: Filtering bot traffic by Alexandr Nikitin

JIT Optimizations

Refs

Threading

Memory

.NET Core 3.0 Intrinsics