Spreads / Spreads.Native

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

Home Page:http://docs.dataspreads.io/spreads/libs/native/api/README.html

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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.

About

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

http://docs.dataspreads.io/spreads/libs/native/api/README.html

License:Mozilla Public License 2.0


Languages

Language:C# 45.5%Language:Rust 32.1%Language:C++ 12.4%Language:C 8.0%Language:Dockerfile 1.6%Language:Batchfile 0.4%Language:Smalltalk 0.0%