3 ms·
> If you can accept working with GNU extensions that are available in recent-ish GCC and Clang I do my private project in C++ so it's not a case, but at my cur
by wmu 11y ago
> If you can accept working with GNU extensions that are available in recent-ish GCC and Clang
I do my private project in C++ so it's not a case, but at my current company we use also MSVC. I wish we could abandon that compiler and work with GCC or clang only.
> However, for a lot of SIMD tasks I encounter, just basic arithmetic + shuffles is more than 80% of what I need.
Your remaining 20% is my 80%. :)
- exDM69 11y ago> ... but at my current company we use also MSVC. I wish we could abandon that compiler and work with GCC or clang only. Good news! These days you can produce MSVC compatible binaries with Clang or even use Clang as a compiler from the C++ IDE. Whether or not you can do this in practice is another matter, but it can be done. > Your remaining 20% is my 80%. :) Yeah, if you look at my examples, they're rather straightforward arithmetic with 4 dimensional vectors. There's very little need for any integer arithmetic or more exotic combinations of operations. A little fused multiply-and-add here and there. But I haven't seen a better method for this, most of the code is CPU-agnostic and will compile to x86 or ARM code using all the available instruction sets (depending on compiler arguments, e.g. -mavx2 or -march=native). I really haven't seen a SIMD math lib with so little duplication for different CPUs elsewhere.