Theme1: Go’s new SIMD APIs give developers a way to squeeze out low‑level performance without resorting to C/C++ or assembly
- “This feature opens many doors for optimizing low-level performance in Go projects, that are already running multicore.” – qprofyeh
- “I'm grateful that Go a non‑proprietary language offers these features.” – abirch
- “Oh this is great, it was one of my biggest bugbears about Go since you almost always have to link C/C++ code to get the appropriate performance.” – physicsguy
Theme 2: In practice, SIMD will be used mainly by library maintainers; most application developers will rely on those libraries rather than writing intrinsics themselves
- “Even with languages that adopt ways to manually write SIMD, it’s mostly left to library maintainers rather than application developers.” – stingraycharles
- “I work for a C++ timeseries database startup that leverages SIMD about as much as we possibly can, and except for some extremely rare places we just use libraries.” – stingraycharles
- “However even then, it depends on how the libraries API surface looks like.” – pjmlp
Theme 3: Go’s SIMD support places it alongside other languages that already provide SIMD capabilities, which the community welcomes
- “Besides the usual C and C++, we have Java, .NET, D, Zig, Julia, Swift, Rust.” – pjmlp
- “Vectorizing computations has been Matlabs secret sauce.” – abirch
- “Julia does that too.” – mastermage