Lists Are 3 Times SLOWER in .NET 9!

  Переглядів 25,568

Nick Chapsas

Nick Chapsas

16 днів тому

Until the 30th of April, use code BIRTHDAY40 for 40% off any course, BIRTHDAY20 for 20% off any bundle and BIRTHDAY15 for 15% off your first year of Dometrain Pro: bit.ly/4aUVR8l
Become a Patreon and get special perks: / nickchapsas
Hello, everybody, I'm Nick, and in this video I want to talk about a performance regression in .NET 9 regarding the Add method of Lists which is only happening on MacOS.
Help Microsoft troubleshoot it: github.com/dotnet/runtime/iss...
Workshops: bit.ly/nickworkshops
Don't forget to comment, like and subscribe :)
Social Media:
Follow me on GitHub: github.com/Elfocrash
Follow me on Twitter: / nickchapsas
Connect on LinkedIn: / nick-chapsas
Keep coding merch: keepcoding.shop
#csharp #dotnet

КОМЕНТАРІ: 61
@antonmartyniuk
@antonmartyniuk 14 днів тому
Mac is evil, I knew it
@brebete
@brebete 14 днів тому
"I'm terrible at financial decisions, yes", you got me 🤣
@Tielc
@Tielc 13 днів тому
This single comment in the video caused me to smash that like button.
@J_i_m_
@J_i_m_ 14 днів тому
The only conclusion is that there is a backdoor in it!
@phizc
@phizc 14 днів тому
4:14 Nick, you compared the normal vs preallocated. The ordering of the rows are different. The differences between .NET 8 and 9 were insignificant.
@nickchapsas
@nickchapsas 14 днів тому
I'm so blind
@emielregis385
@emielregis385 14 днів тому
It's evolving, just backwards
@KvapuJanjalia
@KvapuJanjalia 14 днів тому
Speaking of regressions in .NET 9: they also added EF Core context model automatic compilation during build, and it got 5 times slower (compared to .NET 7) or something like that.
@nickchapsas
@nickchapsas 14 днів тому
Wait what? Link?
@KvapuJanjalia
@KvapuJanjalia 14 днів тому
@@nickchapsas Issue number 33483 in EF Core repo.
@vynxc.
@vynxc. 14 днів тому
Video coming soon? ​@@nickchapsas
@1992jamo
@1992jamo 14 днів тому
Since EF Core dbset is not thread safe, it's useless to me anyway.
@zbaktube
@zbaktube 14 днів тому
Brothers in ARMs 🙂
@joaogabrielv.m328
@joaogabrielv.m328 14 днів тому
Badunts
@DynotoeTube
@DynotoeTube 2 дні тому
I have a AMD Epyc Rome, 256 Gb of memory on Windows 10 Pro for Workstations, and have noticed a 3-4x slowdown on some of my C# exe's. I have one project that downloads and writes purposely fragmented text files (anywhere between 500-800k files) then joins the fragments to one file and results to about 37k files. Project heavily uses arrays, arraylists and file IO and directory class. Only difference I can think about is updates to windows and windows quality updates and .Net updates!!
@carlinhos10002
@carlinhos10002 14 днів тому
That would be terrible for those mac servers
@RiddleTime
@RiddleTime 14 днів тому
4:50 love your honesty haha. Great videos as usual :)
@99aabbccddeeff
@99aabbccddeeff 14 днів тому
Thank you for staying on top of everything happening in the .NET world!
@ryan-heath
@ryan-heath 14 днів тому
4:25 casually flaunting his 32 hyper cpu cores 😂👌
@anshu5345
@anshu5345 5 днів тому
and a 4090
@andrewshirley9240
@andrewshirley9240 14 днів тому
One small mistake you made-- in the github issue, you said their results showed perf increase while yours was the same. Theirs was the same too! But your benchmark tool prints the results in "8-9, 8-9" order, while the issues post is in "8-8, 9-9" order, which I think tripped you up
@rs3800
@rs3800 8 днів тому
apropos performance, I have wondered why Nick did not make a video about general perf features e.g. DevDrive on Windows 11
@F1nalspace
@F1nalspace 14 днів тому
List.Add() is very essential, so if this slower... a lot of code that builds on top on that is much slower. Regarding performance regession tests... in the large company i am working right now, we don't do such tests. Those are too expensive and most of the time the customer doesn't care if the data plots in 2 or 4 seconds. If the plot takes 3 minutes, then we maybe would investigate that... But i totally share your oppinion, you have absolutely do performance and even stability tests when upgrading a version or framework.
@MatinDevs
@MatinDevs 14 днів тому
Microsoft won't be adding support for MAUI on Linux. As many Microsoft employees watch your videos, I suggest you make a video about this.
@Sp1tfire100
@Sp1tfire100 14 днів тому
They will drop maui, ms doesn't use it, so it is doomed
@Tsunami14
@Tsunami14 14 днів тому
MAUI on .NET 8 was a HORRIBLE experience. So it'll be a hard sell for Microsoft to get me to try it again.
@R3ap4r
@R3ap4r 14 днів тому
jsuarezruiz is working on a fork for Linux for some time now.
@ErazerPT
@ErazerPT 14 днів тому
Xamarin.Forms was bad, MAUI took that and went up to 11, trash level. Now... native iOS and Windows.Forms are GREAT to work with and not all that dissimilar, so... which UI model is thrown in the mix that a cross-compatible layer becomes trash? Guess... Funny enough, same company has Skia, which is one of the most enjoyable "low level layer" things to work with. Sometimes things are just bass ackwards...
@jongeduard
@jongeduard 6 днів тому
Personally, I consider Avalonia the best gui framework that currently exists for dotnet. This project is the only one doing things actually right, by building everything up from low level graphics, so that it's way less heavy, and the entire structure of the code is so much better. MAUI and Uno build everything on top of other stuff, making everything extremely heavy and complex. Avalonia also far more friendly when coming from WPF. The only thing is that it's not yet another framework developed by just Microsoft. But the difference is that I consider that actually a good thing.
@manchastyle
@manchastyle 14 днів тому
I believe we're experiencing a similar transition once again. Just as with WebForms, there's now Blazor. Initially, there was the advent of WebMethods, which ushered in the era of AJAX. Presently, everything seems to revolve around APIs. And now, we have Blazor, essentially a reinvention. Why not opt for a simpler approach of creating everything as an API and universally implementing it?
@georgebelletty7861
@georgebelletty7861 14 днів тому
Nick, is there any point using .NET 9? We are small team with many apps to maintain, because of .NET version support lifetimes. It is very hard to use non-LTS versions of .NET regardless of any cool features that may come up!! What's your opinion?
@okmarshall
@okmarshall 14 днів тому
Absolutely not. Stick with LTS releases for production, especially if you're a small team.
@jimfoye1055
@jimfoye1055 11 днів тому
No, it's going to be a pointless release, like 7.
@rosepainting8775
@rosepainting8775 13 днів тому
Hi Nick, I am also Nick, I want to become C# .Net developer I checked your website, I found it difficult to figure out which course to do first. Can you put order on your courses?
@Miles7000
@Miles7000 12 днів тому
Hello, when will available tutorials about Blazor web in Dometrain??
@ManderO9
@ManderO9 14 днів тому
lists go brrrr, lmao, what a project name.
@Kitulous
@Kitulous 14 днів тому
is this a macos problem or an apple silicon problem exactly? someone try this with an intel mac on macos
@joseduque2406
@joseduque2406 14 днів тому
Hahaha I use the same logic when buying a new laptop 😂 you work hard man, why not treat yourself with a awesome MacBook.
@zfold4702
@zfold4702 14 днів тому
Waiting for Benchmark training
@desertfish74
@desertfish74 14 днів тому
ListsGoBrrrrrrrrr
@iSoldat
@iSoldat 13 днів тому
From my first data processing class on an Apple IIe to today's x86 architecture, I swore I would never buy an apple product. I've honored that promise without compromise and I believe the iphone is the most evil tech on the planet.
@nikolayrogchev9628
@nikolayrogchev9628 14 днів тому
The namespace ... hahah
@BasvanderVeeken
@BasvanderVeeken 14 днів тому
There wasn't an improvement in .NET 9 on the test. Just the order was different, first both .NET 8 and then 9.
@danda-dandic
@danda-dandic 14 днів тому
Lists go brrr :D
@amitkumdixit
@amitkumdixit 14 днів тому
This is not a correct benchmark. Since most of these apps will be deployed on a Linux server.
@sebastianwhiffen9594
@sebastianwhiffen9594 14 днів тому
ListsGoBrrr namespace lmao
@Tony-dp1rl
@Tony-dp1rl 14 днів тому
It has evolved ... into an animal that cannot run as fast ... lol
@anilkumarpelluri3795
@anilkumarpelluri3795 14 днів тому
I like your videos, but you're passing a statement where you really know what Microsoft team has worked. Where did you see in the document for the list improvements
@soonhongng7037
@soonhongng7037 13 днів тому
blud is try to justify himself XDDDD respect
@IllllllllIlIIIIIII
@IllllllllIlIIIIIII 14 днів тому
eurgh, that new ui looks so bad :/
@IgorSodre-kx7iq
@IgorSodre-kx7iq 14 днів тому
What the F. Comment section is full of strange bots.
@guiorgy
@guiorgy 14 днів тому
Insert the "First time?" meme here
@IgorSodre-kx7iq
@IgorSodre-kx7iq 14 днів тому
@@guiorgy Hahahaha, I know every video is full of bots trying to scam people, but the ones I saw here where just writing some weird philosophical maybe motivation things.
@antosha2224
@antosha2224 14 днів тому
does it really matter? this issue is only about macos local environments...
@nickchapsas
@nickchapsas 14 днів тому
This time it's on macos next time is on linux x64. The main learning of this issue still matters
@LilPozzer
@LilPozzer 14 днів тому
the first one, like PLSSSS
@Roddles
@Roddles 14 днів тому
You are becoming too negative these days with code cop and this. Think I’ll unsubscribe
The New Collection Access Feature of C# 13
5:54
Nick Chapsas
Переглядів 38 тис.
Forget Grafana And Prometheus! Start With This.
10:51
Nick Chapsas
Переглядів 3,8 тис.
0% Respect Moments 😥
00:27
LE FOOT EN VIDÉO
Переглядів 37 млн
The Pattern You MUST Learn in .NET
20:48
Nick Chapsas
Переглядів 72 тис.
Solid Programming - No Thanks
32:00
ThePrimeTime
Переглядів 193 тис.
Await Async Tasks Are Getting Awesome in .NET 9!
9:24
Nick Chapsas
Переглядів 80 тис.
Stop Using the Worst Way to Loop Lists in .NET!
9:35
Nick Chapsas
Переглядів 34 тис.
Why Doesn’t Everyone Use This Animation???
23:59
Theo - t3․gg
Переглядів 68 тис.
Why Developers Already Hate .NET 9
10:12
Nick Chapsas
Переглядів 69 тис.
The Magic of Breaking Down Your Types in C#
8:59
Nick Chapsas
Переглядів 62 тис.
“.NET 9 Is Killing MediatR, MassTransit & Wolverine!”
11:59
Nick Chapsas
Переглядів 75 тис.
i changed my mind about zig
9:34
Low Level Learning
Переглядів 132 тис.