GitHunt
SP

Spreads/Spreads.Native

Blosc (byteshuffle, zstd, lz4, zip), mimalloc and CPU core id (sched_getcpu) native methods for .NET Standard 2.0

Spreads.Native

Native compression

Spreads.Native.Compression class exposes methods from Blosc:

  • SIMD-optimized shuffle/unshuffle.
  • Compression: LZ4, Zstd, Zlib/GZip/Deflate compression/decompression.
    Currently works on Windows x64/x86 and Linux x64 (tested on WSL & Docker Ubuntu). Targets netstandard2.0.

Mimalloc

Full mimalloc API in .NET.

Cpu.GetCurrentCoreId method

Equivalent of Thread.GetCurrentProcessorId method,
but which works on .NET Standard 2.0 and guarantees that the returned value could be used directly
as an index in arrays with Cpu.CoreCount length. This allows to avoid expensive modulo
operation in the most common use cases of per-core data structures.

License

MPL 2.0. See the license file and third-party licenses.

Languages

C#45.5%Rust32.1%C++12.4%C8.0%Dockerfile1.6%Batchfile0.4%Smalltalk0.0%

Contributors

Mozilla Public License 2.0
Created March 3, 2018
Updated July 16, 2025
Spreads/Spreads.Native | GitHunt