Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The cheeky answer would be to throw away the trash every decade, but the real answer is that there is tooling in place to pick the best possible implementation of a function at link time on modern *nix systems to target several levels of SIMD support e.g. SSE2 only, SSE4.2, AVX2, common collection of AVX512 extensions.


What tool you are referring to? Can you please forward me to those resources?


I think crest may be referring to function multiversioning, but that only helps choose/call the implementation, not generate it.

github.com/google/highway supports compiling your single source code once into several versions, and then dispatching to the best one.

Disclosure: I am the main author.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: