Add initial test coverage (fails on tail values) - #1
Conversation
|
Wow, I had no idea someone would look at this. This is very unfinished initial draft of what the implementation would approximately look like. At the time, I was reading the papers by Dr. Lemire and reviewing existing the implementations in Rust, Go, etc. realizing that .NET's cross-platform SIMD vectors are a great fit to implement this natively in C#. However, my skill and knowledge were insufficient (at the time) so after getting stuck I decided to place this into a long list of OSS projects to do later :D To be honest, if you were to see this through, that would likely require doing the 80-90% of the remaining work (I don't even know if the output here matches reference implementations). Meaning, you might as well create your own repo (and write it from scratch, there are a lot of decisions to be made regarding API shape and various codecs this is supposed to support) as I wouldn't want to get the credit for someone else's work. |
|
Hi @neon-sunset Thanks for the thoughtful response. I'll start my own implementation and share the source when I make some more progress. So far, I've completed and verified the non-non-vertorized scalar paths. The vectorization side is also going to challenge my brain -- but should be a fun challenge. |
This PR adds the first test case that can be used to verify the tail handling, when implemented.
@neon-sunset Let me know if you're still working on this project and if you need any help completing the implementation.