logoalt Hacker News

camel-cdryesterday at 10:14 PM1 replyview on HN

The create is called portable_simd.

There is no reason a portable_simd relu_dot implemention should need to specify the SIMD width.

But the design and documentation of portable_simd makes the fixed size syntactically easy/the default and the width agnostic code harder.


Replies

dwatttttyesterday at 11:17 PM

> There is no reason a portable_simd relu_dot implemention should need to specify the SIMD width.

What should it choose then? I have a Zen 3 processor, and benchmarking some simd I did recently says 32 byte or 64 byte chunks was fastest. But I'm sure I'd get a different result on a different Zen, and different again on Intel's.

How would the library decide what SIMD width I should use?

show 1 reply