4 ms·
I wonder whether avo could have been useful here?[1] I mention it because it came up the last time we were talking about AVX operations in go.[2, 3] 1 = https:
by carbocation 3y ago
I wonder whether avo could have been useful here?[1] I mention it because it came up the last time we were talking about AVX operations in go.[2, 3]
1 = https://github.com/mmcloughlin/avo https://github.com/mmcloughlin/avo
2 = https://news.ycombinator.com/item?id=34465297 https://news.ycombinator.com/item?id=34465297
3 = https://www.reddit.com/r/golang/comments/10hmh07/how_to_use_avx512_in_golang/ https://www.reddit.com/r/golang/comments/10hmh07/how_to_use_...
- camdencheek 3y agoI did consider Avo! I even went as far as to implement a version using Avo since it has a nice dot product example I could use as a starting point. But ultimately, for as small as these functions are, I felt that Avo was an unnecessary extra layer to grok. Additionally, it's x86-only, and I knew in advance I'd want to implement an ARM version as well since we also do some embeddings stuff locally. If I were to ever take this further and add loop unrolling or something, I'd absolutely reach for Avo
- carbocation 3y agoThanks for sharing, that is a very interesting coda to the story!