We've just published "Unsafe C# code best (worst) practices" article - a set of 25 good/bad examples: https://t.co/M4647kqxKY Let's crash productions in style together! 🧐
@nietras1@dyaroshev@geofflangdale definitely LD4 is expensive...8 cycles vs. LDP 2 cycles. Might be able to tell the slowness if I see the asm diffs between the two approaches.
@nietras1@dyaroshev@geofflangdale the names might be mixed up, but this is what I just verified:
So maybe you want the first one i.e. `Load4xVector128`
@nietras1@dyaroshev@geofflangdale I believe you are asking about `Load4xVector128AndUnzip`?
- https://t.co/mntqvXD2xq
If not, which one of the variants are you looking for?
https://t.co/YrB3mh14Np
We just merged 4 different types of APIs for Arm64 that loads the array contents in Vector in an interesting way!
Here is a pictorial summary:
#dotnet#dotnetcore
New blog post "Sep 0.10.0 - 21 GB/s CSV Parsing Using SIMD on AMD 9950X 🚀"
📈 Sep #performance from 7 GB/s to 21 GB/s over last two years
🧑💻 #csharp#SIMD and #x64 assembly on #dotnet 9.0
🛠️ Tweaks and new #AVX512-to-256 parser
🔢 Lots of benchmarks
👇
https://t.co/JWbFX0nFyy
Most accidental and by far, the easiest change to get 15%~20% throughout improvement - Enable LTO for coreclr linux builds. #dotnetcore
https://t.co/c0uOg8BCjN
.NET added 1123 new Arm64 SVE instructions. Great work from .NET + Arm engineers. We wrote a tool that read the Arm manual and generated C++ code needed to implement instructions in RyuJIT, cutting the implementation time drastically.
https://t.co/EMeJ24gnJt
#dotnetcore#sve
@elonmusk - is there a way to give a sequence number to car that wants to use a supercharger? At busy stations it gets chaotic and an altercation about who is in line and whose turn is next to charge.