SaaSHub helps you find the best software and product alternatives Learn more →
Top 23 C# Performance Projects
-
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.
-
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.
-
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.
-
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! 🚀
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 -
Project mention: PowerUp: IDE Decompilation and Disassembly Tools | reddit.com/r/hypeurls | 2022-08-29
-
-
BedrockFramework
High performance, low level networking APIs for building custom servers and clients.
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.
-
-
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/
-
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.
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-09Interesting demo of Turning .NET assemblies into FPGA hardware for faster execution and lower power usage using an open source framework.
-
-
-
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
C# Performance related posts
- How fast is really ASP.NET Core?
- has anyone played in 2 gb ram ? i have 2gb ram only , i really wamt to play , i purchased the game
- benchmark test help
- Tips for ranked benchmark test
- So, hive mind, how do I convince the missus I need a new PC?
- Using VS: Code as IDE for C#
- PowerUp: IDE Decompilation and Disassembly Tools
-
A note from our sponsor - #<SponsorshipServiceOld:0x00007fea5b680a18>
www.saashub.com | 1 Feb 2023
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 |