A couple of questions
dodexahedron opened this issue · 1 comments
dodexahedron commented
- Is this license compatible with the MIT license? My not-a-lawyer interpretation of it is that it probably is, but I'm considering using this in something MIT-licensed, so I wanted to make sure.
The next couple are just passing thoughts I had:
- I noticed at least one 256-bit buffer when I took a quick scan over the code. Is there anything to be gained by use of Vector256 and/or available intrinsics in .net core 3.0+?
- Related to 2, there's an implementation of CRC32 in there. Is it worth considering the
Sse42.Crc32
intrinsic also available in .net core 3.0+?
brantburnett commented
- I am not a lawyer, so please don't take this as legal advice. However, my understanding is that if you're taking it as a transitive NuGet dependency of another open source package, you're fine. If you want to copy the source code you'd need to retain the license and copyright notices. If you want to distribute an app you'd need to include open source license notices with the app.
- Generally we are using vector intrinsic for performance. Can you point me to the particular spot you noticed and I'll check more closely?
- The CRC32 implementation is using that intrinsic.
Snappier/Snappier/Internal/Crc32CAlgorithm.cs
Lines 80 to 115 in 6d4474f