Hacker News new | past | comments | ask | show | jobs | submit login

Do you have some examples of large and complex C# applications with really good performance?

I’m hard pressed to think of any Microsoft software at all that I think feels really nice. Except for VSCode, which is of course built on Electron and not .NET.

The only thing that comes to mind is Paint.NET, which doesn’t seem like all that big of an application. It’s very nicely done, but I think it’s only got like a single dev working on it, so couldn’t be that big.






Devtoys is great and open-source and .NET and cross-platform * https://devtoys.app/

and in context to the thread files-community/files is great and open-source and .NET * https://files.community/ (its actually 96% .net and 3.1% c++)


Isn't Visual Studio (not VSCode) written in .Net.

That's specifically an example of an application that I think is slow. It's slow to load and often slow to respond. The support for Git has to be amongst the slowest of any professional application in the world. But I'm pretty sure it has a deeply flawed architecture compared to VSCode.

It's written in C++ and .NET Framework. VS is mostly an exception anyway. I much prefer to use VS Code + Rider instead. Your comments leave me with impression that you are not interested in understanding the performance profile of .NET and are looking to engage in a language flamewar instead.

Edit: I stand corrected, based on reply in a sibling comment most of the perception stems from how .NET Framework works. Understandable.


> Do you have some examples of large and complex C# applications with really good performance?

Most of them. An implementation would have to go out of its way to make itself perform poorly if it is built on top of, say, .NET 8.

Have you heard of Ryujinx? Or Nethermind? Or Garnet? Or have you seen that .NET's Regex engine, written in pure C#, is the third fastest in the world after Intel's Hyperscan and Rust's Regex crate?


Fair enough, maybe my perceptions of .NET performance are mostly based on old versions of .NET without all the tiered compilation and other features to make JIT warmup less of an issue.

We are only just now wrapping up the conversion at work to .NET 8 from 4.8, so it will be interesting to see the performance numbers once that is complete.

Our .NET application has millions of lines of code, so JIT compilation time in particular in the old .NET could be very painful.


At my previous employer, moving from .NET Framework 4.6.1 to .NET Core 3.1 resulted in response latency of one of the particularly heavy requests going from ~2s to ~300ms :)

The difference between 4.8 and 8 can easily be tenfold, depending on the workload and bottlenecks (if it's a slow DB query - EF Core might compile it to a more efficient variant in, say, EFC 8, but if it's linear scan - not much can be done).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: