C# Performance

Open-source C# projects categorized as Performance

Top 23 C# Performance Projects

  • BenchmarkDotNet

    Powerful .NET library for benchmarking

    Project mention: Which would be faster to update all values? 3 layer list, 2 layer array or 1 layer array? | reddit.com/r/csharp | 2023-01-28

    You can use BenchmarkDotNet to quickly write your own reliable benchmarks and run them on different target runtimes.

  • Entitas

    Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity

  • SonarQube

    Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.

  • Project mention: Edsger Dijkstra - math and memes | reddit.com/r/ProgrammerHumor | 2022-12-16

    In Unity, the implementation was done by moving functions from the Entity to the Archetype, which then can be accessed via interfaces. Those interfaces can be inherited in classes. I have "running, waiting, scanning" behaviour classes that get applied to those Archetypes, so OOP is still there but different.

  • perfview

    PerfView is a CPU and memory performance-analysis tool

    Project mention: Using VS: Code as IDE for C# | reddit.com/r/csharp | 2022-09-28

    I've found dotnet-trace + speedscope to be ok if you just want a hint on where time is going. There's also perfview but it's Windows only.

  • optick

    C++ Profiler For Games

    Project mention: Tracy: A hybrid frame and sampling profiler for games and other applications | news.ycombinator.com | 2023-01-28

    I have used Tracy to improve the performance of a latency sensitive application. The main advantage of this tool, in comparison to something like the Visual Studio profiler, is the fact that it can highlight the inter thread dependencies and synchronization between the threads. The other main feature, in my opinion, is the statistical tab that is associated to the recorded events: it can show the statistical distribution of the duration of all the invocations of functions and it allows to identify patterns in the performance of the application. Furthermore, a table can be used to sort the invocations of the functions and quickly jump to the point in time when the sample was recorded.

    Other notable tools that implement a functionality similar to what is provided by Tracy are Optick https://github.com/bombomby/optick and Intel VTune (sadly specific to only Intel processors) in the Threading analysis.

  • App.Metrics

    App Metrics is an open-source and cross-platform .NET library used to record and report metrics within an application.

  • ComputeSharp

    A .NET library to run C# code in parallel on the GPU through DX12, D2D1, and dynamically generated HLSL compute shaders, with the goal of making GPU computing easy to use for all .NET developers! 🚀

    Project mention: What library to code a Screensaver? | reddit.com/r/csharp | 2023-01-07

    Create a UWP or WinUI 3 applicaation and use the AnimatedComputeShaderPanel from ComputeSharp. The library lets you write shaders (ie. code to run on the GPU) entirely in C#, and handles all the logic to setup a DX12 animated swapchain, similar to Win2D. If you look at the repo you can also see a whole bunch of examples, which you can also try out for yourself. There's also several wiki pages with lots of info.

  • InfluxDB

    Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.

  • NetCoreServer

    Ultra fast and low latency asynchronous socket server & client C# .NET Core library with support TCP, SSL, UDP, HTTP, HTTPS, WebSocket protocols and 10K connections problem solution

  • Lazy Cache

    An easy to use thread safe in-memory caching service with a simple developer friendly API for c#

    Project mention: Request for code review for IMemoryCache Generic Helper method | reddit.com/r/csharp | 2022-08-27
  • PowerUp

    ⚡ Decompilation Tools and High Productivity Utilities ⚡

    Project mention: PowerUp: IDE Decompilation and Disassembly Tools | reddit.com/r/hypeurls | 2022-08-29
  • FastExpressionCompiler

    Fast Compiler for C# Expression Trees and more!

  • BedrockFramework

    High performance, low level networking APIs for building custom servers and clients.

    Project mention: Optimization/suggestions for networking library | reddit.com/r/csharp | 2022-07-13

    PS: I wrote a networking library that I should fine more time to work on here https://github.com/davidfowl/BedrockFramework/. It might serve as some inspiration.

  • DryIoc

    DryIoc is fast, small, full-featured IoC Container for .NET

  • NetFabric.Hyperlinq

    High performance LINQ implementation with minimal heap allocations. Supports enumerables, async enumerables, arrays and Span<T>.

  • SqlQueryStress

    SQL query stress simulator created by Adam Machanic http://dataeducation.com/sqlquerystress-the-source-code/

  • Latios-Framework

    A Unity DOTS framework for my personal projects

    Project mention: Unity Released ECS 1.0 - Production-Ready Finally - for Unity 2022.2+ | reddit.com/r/Unity3D | 2022-12-02
  • FusionCache

    FusionCache is an easy to use, high performance and robust cache with an optional distributed 2nd layer and some advanced features.

    Project mention: How to implement cache | reddit.com/r/csharp | 2022-07-26

    LazyCache is amazing. Btw I'm using FusionCache and it is good too

  • CrossPlatformDiskTest

    Windows, macOS and Android storage (HDD, SSD, RAM) speed testing/performance benchmarking app

  • Microsoft-Performance-Tools-Linux-Android

    Linux, Android and Chromium Performance Tools built using the Microsoft Performance Toolkit. Cross-platform .NET Core + WPA GUI

  • Hastlayer-SDK

    Turning .NET assemblies into FPGA hardware for faster execution and lower power usage. See the Readme and https://hastlayer.com.

    Project mention: Demo of achieving hardware acceleration using .NET on cubesats to lower both the risks and costs | reddit.com/r/satellites | 2022-02-09

    Interesting demo of Turning .NET assemblies into FPGA hardware for faster execution and lower power usage using an open source framework.

  • RecordParser

    Zero Allocation Writer/Reader Parser for .NET Core

  • SimpleSIMD

    Easy to use SIMD accelerated Array and Span methods

  • Ecstasy

    Simplest powerful ECS for Unity. Flexible and fast. Works w/ Burst (by neon-age)

    Project mention: Made a Simple Fluid Physics without Rigidbodies, using my own barebones ECS! Github in comments :) | reddit.com/r/Unity3D | 2022-05-11
  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-01-28.

C# Performance related posts

Index

What are some of the best open-source Performance projects in C#? This list will help you:

Project Stars
1 BenchmarkDotNet 8,642
2 Entitas 6,038
3 EntityComponentSystemSamples 5,083
4 perfview 3,434
5 optick 2,519
6 App.Metrics 2,125
7 ComputeSharp 2,029
8 NetCoreServer 1,836
9 Lazy Cache 1,496
10 PowerUp 1,486
11 FastExpressionCompiler 930
12 BedrockFramework 926
13 DryIoc 816
14 NetFabric.Hyperlinq 808
15 SqlQueryStress 779
16 Latios-Framework 423
17 FusionCache 412
18 CrossPlatformDiskTest 301
19 Microsoft-Performance-Tools-Linux-Android 283
20 Hastlayer-SDK 255
21 RecordParser 159
22 SimpleSIMD 77
23 Ecstasy 72
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com