Skip to main content

A C++ implementation of StreamVByte, with Python bindings.

Project description


libstreamvbyte


Table of Contents
  1. About The Project
  2. Getting Started
  3. Benchmark
  4. Roadmap
  5. Contributing
  6. License
  7. Reference
  8. Contact

About The Project

libstreamvbyte is a C++ implementation of StreamVByte, with Python bindings using pybind11.

StreamVByte is an integer compression technique that use SIMD instructions (vectorization) to improve performance. The library is optimized with SSSE3 intrinsics, which are supported by most x86_64 processors. It uses sse2neon to translate SSSE3 intrinsics to NEON intrinsics for ARM processors. The library can also be used with other 32-bit architectures, although it will fall back to scalar implementations in those cases.

With libstreamvbyte, you can quickly and efficiently compress integer sequences, reducing the amount of storage space and network bandwidth required. The library is easy to use and integrates seamlessly with Python via pybind11 bindings. Whether you're working with large datasets or building a distributed computing system, libstreamvbyte can help you improve performance and reduce the resources needed to handle your data.

Currently supports Python 3.8+ on Windows, Linux (manylinux_2_17, musllinux_1_1) and macOS (universal2).

(back to top)

Getting Started

Installation

For Python

Install from PyPI using pip.

pip install libstreamvbyte

Or install from .whl file.

pip install "path/to/your/downloaded/whl"

To find appropriate .whl file, please visit releases.

For C++

You must have CMake installed on your system.

# clone the repo
git clone https://github.com/wst24365888/libstreamvbyte
cd libstreamvbyte

# build and install
cmake .
make
sudo make install

Usage

For Python

Import libstreamvbyte first.

import libstreamvbyte as svb

And here are the APIs.

# Encode an array of unsigned integers into a byte array.
encode(in_uint32: numpy.ndarray[numpy.uint32]) -> numpy.ndarray[numpy.uint8]

# Decode a byte array into an array of unsigned integers.
decode(in_uint8: numpy.ndarray[numpy.uint8], size: int) -> numpy.ndarray[numpy.uint32]

# Encode an array of signed integers into an array of unsigned integers.
zigzag_encode(in_int32: numpy.ndarray[numpy.int32]) -> numpy.ndarray[numpy.uint32]

# Decode an array of unsigned integers into an array of signed integers.
zigzag_decode(in_uint32: numpy.ndarray[numpy.uint32]) -> numpy.ndarray[numpy.int32]

# Check if the current wheel is a vectorized version.
is_vectorized_version() -> bool

For C++

Include streamvbyte.h first.

#include "streamvbyte.h"

For the APIs, please refer to include/streamvbyte.h.

Example

For Python

import libstreamvbyte as svb

N = 2**20 + 2

# type(original_data) == np.ndarray
# original_data.dtype == np.int32
original_data = np.random.randint(-2**31, 2**31, N, dtype=np.int32)

# type(compressed_bytes) == np.ndarray
# compressed_bytes.dtype == np.uint8
compressed_bytes = svb.encode(svb.zigzag_encode(original_data))

# type(recovered_data) == np.ndarray
# recovered_data.dtype == np.int32
recovered_data = svb.zigzag_decode(svb.decode(compressed_bytes, N))

For C++

#include "streamvbyte.h"

int main() {
    std::size_t N = (1 << 20) + 2;

    std::vector<int32_t> original_data(N);
    for (std::size_t i = 0; i < N; ++i) {
        original_data[i] = rand() - rand();
    }

    std::vector<uint8_t> compressed_bytes = streamvbyte::encode(streamvbyte::zigzag_encode(original_data));
    std::vector<int32_t> recovered_data = streamvbyte::zigzag_decode(streamvbyte::decode(compressed_bytes, N));

    return 0;
}

Compile it with linking to libstreamvbyte.

g++ -o example example.cpp -lstreamvbyte

(back to top)

Benchmark

OS: Linux 5.15.79.1-microsoft-standard-WSL2 x86_64
CPU: AMD Ryzen 5 3600 6-Core Processor (12) @ 3.600GHz

Run on (12 X 3593.26 MHz CPU s)
CPU Caches:
  L1 Data 32 KiB (x6)
  L1 Instruction 32 KiB (x6)
  L2 Unified 512 KiB (x6)
  L3 Unified 16384 KiB (x1)
Load Average: 0.81, 0.85, 0.69
-----------------------------------------------------------------------------------
Benchmark                              Time             CPU   Iterations Throughput
-----------------------------------------------------------------------------------
BM_memcpy/4096                       149 ns          149 ns      4688531 13.7122G/s
BM_memcpy/8192                       548 ns          548 ns      1275803 7.46783G/s
BM_memcpy/16384                     1139 ns         1138 ns       640835 7.19553G/s
BM_memcpy/32768                     2185 ns         2185 ns       320840 7.49932G/s
BM_memcpy/65536                     4921 ns         4921 ns       142703 6.65895G/s
BM_memcpy/131072                   10968 ns        10968 ns        63502 5.97511G/s
BM_memcpy/262144                   22465 ns        22465 ns        31134 5.83457G/s
BM_memcpy/524288                   45101 ns        45100 ns        15541 5.81245G/s
BM_memcpy/1048576                  91131 ns        91131 ns         7639 5.75314G/s
BM_streamvbyte_encode/4096          1222 ns         1222 ns       580855 1.67556G/s
BM_streamvbyte_encode/8192          2470 ns         2467 ns       282349 1.66064G/s
BM_streamvbyte_encode/16384         4945 ns         4945 ns       139671 1.65662G/s
BM_streamvbyte_encode/32768         9990 ns         9989 ns        70497 1.64017G/s
BM_streamvbyte_encode/65536        19853 ns        19853 ns        30963 1.65051G/s
BM_streamvbyte_encode/131072       39933 ns        39932 ns        17401 1.64118G/s
BM_streamvbyte_encode/262144       80563 ns        80562 ns         8193 1.62697G/s
BM_streamvbyte_encode/524288      160716 ns       160716 ns         4284  1.6311G/s
BM_streamvbyte_encode/1048576     319253 ns       319253 ns         1942 1.64223G/s
BM_streamvbyte_decode/4096           691 ns          691 ns      1040462 2.96191G/s
BM_streamvbyte_decode/8192          1341 ns         1341 ns       516979 3.05539G/s
BM_streamvbyte_decode/16384         2683 ns         2683 ns       261208 3.05359G/s
BM_streamvbyte_decode/32768         5348 ns         5348 ns       130319 3.06353G/s
BM_streamvbyte_decode/65536        10817 ns        10817 ns        64427 3.02936G/s
BM_streamvbyte_decode/131072       23207 ns        23207 ns        31546   2.824G/s
BM_streamvbyte_decode/262144       45746 ns        45746 ns        11291 2.86519G/s
BM_streamvbyte_decode/524288       88660 ns        88660 ns         7947 2.95673G/s
BM_streamvbyte_decode/1048576     178497 ns       178497 ns         3907 2.93724G/s
BM_zigzag_encode/4096                810 ns          810 ns       854076 2.52829G/s
BM_zigzag_encode/8192               1611 ns         1608 ns       433154   2.548G/s
BM_zigzag_encode/16384              3174 ns         3174 ns       219165 2.58084G/s
BM_zigzag_encode/32768              6457 ns         6457 ns       108415 2.53754G/s
BM_zigzag_encode/65536             12582 ns        12582 ns        54747 2.60432G/s
BM_zigzag_encode/131072            25243 ns        25243 ns        27802 2.59617G/s
BM_zigzag_encode/262144            50278 ns        50278 ns        13952 2.60693G/s
BM_zigzag_encode/524288           100563 ns       100562 ns         6932 2.60678G/s
BM_zigzag_encode/1048576          211846 ns       211845 ns         3222 2.47487G/s
BM_zigzag_decode/4096                675 ns          675 ns      1041044 3.03263G/s
BM_zigzag_decode/8192               1342 ns         1342 ns       523553 3.05196G/s
BM_zigzag_decode/16384              2643 ns         2643 ns       265497 3.09905G/s
BM_zigzag_decode/32768              5383 ns         5383 ns       130976 3.04377G/s
BM_zigzag_decode/65536             11474 ns        11474 ns        60817 2.85588G/s
BM_zigzag_decode/131072            21777 ns        21777 ns        32345 3.00944G/s
BM_zigzag_decode/262144            43477 ns        43478 ns        14387  3.0147G/s
BM_zigzag_decode/524288            86120 ns        86120 ns         8145 3.04393G/s
BM_zigzag_decode/1048576          173095 ns       173093 ns         4028 3.02894G/s

The unit of Throughput is GB/s (Giga Bytes per second).

Build Benchmarks from Source

cmake . \
    -DCMAKE_BUILD_TYPE=Release \
    -DBUILD_SHARED_LIBS=OFF \
    -DBUILD_PYBIND11=OFF \
    -DPRINT_BENCHMARK=OFF \
    -DBUILD_TESTS=ON \
    -DBUILD_BENCHMARKS=ON
make libstreamvbyte_benchmarks
./libstreamvbyte_benchmarks --benchmark_counters_tabular=true

(back to top)

Roadmap

  • Zigzag encoding/decoding.
  • Support ARM processors with NEON intrinsics.
  • Differential coding (delta encoding/decoding).

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feat/amazing-feature)
  3. Commit your Changes with Conventional Commits
  4. Push to the Branch (git push origin feat/amazing-feature)
  5. Open a Pull Request

(back to top)

License

Distributed under the MIT License. See LICENSE for more information.

(back to top)

Reference

(back to top)

Contact

Author

Project Link

(back to top)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

libstreamvbyte-0.3.6.tar.gz (765.2 kB view details)

Uploaded Source

Built Distributions

libstreamvbyte-0.3.6-cp311-cp311-win_amd64.whl (61.2 kB view details)

Uploaded CPython 3.11 Windows x86-64

libstreamvbyte-0.3.6-cp311-cp311-win32.whl (49.1 kB view details)

Uploaded CPython 3.11 Windows x86

libstreamvbyte-0.3.6-cp311-cp311-musllinux_1_1_x86_64.whl (607.3 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

libstreamvbyte-0.3.6-cp311-cp311-musllinux_1_1_i686.whl (664.3 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ i686

libstreamvbyte-0.3.6-cp311-cp311-musllinux_1_1_aarch64.whl (590.9 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ ARM64

libstreamvbyte-0.3.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (83.5 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

libstreamvbyte-0.3.6-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (88.5 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686

libstreamvbyte-0.3.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (79.2 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

libstreamvbyte-0.3.6-cp311-cp311-macosx_11_0_arm64.whl (55.7 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

libstreamvbyte-0.3.6-cp311-cp311-macosx_10_9_x86_64.whl (59.0 kB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

libstreamvbyte-0.3.6-cp310-cp310-win_amd64.whl (61.2 kB view details)

Uploaded CPython 3.10 Windows x86-64

libstreamvbyte-0.3.6-cp310-cp310-win32.whl (49.1 kB view details)

Uploaded CPython 3.10 Windows x86

libstreamvbyte-0.3.6-cp310-cp310-musllinux_1_1_x86_64.whl (607.3 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

libstreamvbyte-0.3.6-cp310-cp310-musllinux_1_1_i686.whl (664.3 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

libstreamvbyte-0.3.6-cp310-cp310-musllinux_1_1_aarch64.whl (591.0 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ ARM64

libstreamvbyte-0.3.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (83.5 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

libstreamvbyte-0.3.6-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (88.5 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686

libstreamvbyte-0.3.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (79.2 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

libstreamvbyte-0.3.6-cp310-cp310-macosx_11_0_arm64.whl (55.7 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

libstreamvbyte-0.3.6-cp310-cp310-macosx_10_9_x86_64.whl (59.0 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

libstreamvbyte-0.3.6-cp39-cp39-win_amd64.whl (61.1 kB view details)

Uploaded CPython 3.9 Windows x86-64

libstreamvbyte-0.3.6-cp39-cp39-win32.whl (49.2 kB view details)

Uploaded CPython 3.9 Windows x86

libstreamvbyte-0.3.6-cp39-cp39-musllinux_1_1_x86_64.whl (607.5 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

libstreamvbyte-0.3.6-cp39-cp39-musllinux_1_1_i686.whl (664.6 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

libstreamvbyte-0.3.6-cp39-cp39-musllinux_1_1_aarch64.whl (591.1 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ ARM64

libstreamvbyte-0.3.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (83.7 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

libstreamvbyte-0.3.6-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (88.6 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

libstreamvbyte-0.3.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (79.4 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

libstreamvbyte-0.3.6-cp39-cp39-macosx_11_0_arm64.whl (55.8 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

libstreamvbyte-0.3.6-cp39-cp39-macosx_10_9_x86_64.whl (59.0 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

libstreamvbyte-0.3.6-cp38-cp38-win_amd64.whl (61.1 kB view details)

Uploaded CPython 3.8 Windows x86-64

libstreamvbyte-0.3.6-cp38-cp38-win32.whl (49.1 kB view details)

Uploaded CPython 3.8 Windows x86

libstreamvbyte-0.3.6-cp38-cp38-musllinux_1_1_x86_64.whl (607.2 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

libstreamvbyte-0.3.6-cp38-cp38-musllinux_1_1_i686.whl (664.2 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ i686

libstreamvbyte-0.3.6-cp38-cp38-musllinux_1_1_aarch64.whl (590.5 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ ARM64

libstreamvbyte-0.3.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (83.5 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

libstreamvbyte-0.3.6-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (88.2 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686

libstreamvbyte-0.3.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (79.1 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

libstreamvbyte-0.3.6-cp38-cp38-macosx_11_0_arm64.whl (55.6 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

libstreamvbyte-0.3.6-cp38-cp38-macosx_10_9_x86_64.whl (58.8 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

File details

Details for the file libstreamvbyte-0.3.6.tar.gz.

File metadata

  • Download URL: libstreamvbyte-0.3.6.tar.gz
  • Upload date:
  • Size: 765.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for libstreamvbyte-0.3.6.tar.gz
Algorithm Hash digest
SHA256 7d4fabc1187498b1879430fef08d8973944607803c024aa41987bceeb0e0ddca
MD5 c5288f56bd4cef8b0535f7d41e239d1b
BLAKE2b-256 e65406fd7bc440ae4b07704a5590b806daca082a3d83e693303b944ee0a3f892

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 85be00d6b9f7c4c25bd8317ddbf61340f05f0753936f7040ddd075db49003898
MD5 c5181b6b9a520e327d7bb6f26930fe15
BLAKE2b-256 9c8d8216d3cbf3f597dc4009883d7b2e42b6b329e2fa5283862bc1f46e7055a7

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 9dbc2c8bf957a3c0dcf30a76c8251d65a7dbf3099da877f9fbbb17e0f539bf74
MD5 487dd4c03cf31318c5a01565c01e7531
BLAKE2b-256 93d7ca9ec8f8c6379fe2f13bc225188793e26a79f7a62fe6ef564a4d8271bccd

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 8def522d02b55cacc21c7a8c7a6f3b9ff0a443c71887653d3adf1d582cb7180c
MD5 442db08f1b74aa2573bade483e2eb490
BLAKE2b-256 f17a00a1c5d663c1d687580aa335e78c142ba4ab1c12f6bd2afdd918127b0570

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp311-cp311-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp311-cp311-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 63d377e09e4a30d14a56a6703fed42518acf220fc92fb9609251f7cda0688b57
MD5 cdb10e69bcc302dcd5066ec20c482798
BLAKE2b-256 cbb6ac18dd56bea05245f00694e9cd72b6366c54581ed8b5219b2decc141291f

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp311-cp311-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp311-cp311-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 445e742b2570f7575f0b7a97d5a3357ac650700c78c280f82606a5c47369c90b
MD5 97de349fe2224f609b0d66fd09dc17bc
BLAKE2b-256 6aa091b714abc92673f251e91e27cbad5bf4831159e159de666a4f5d5f032ca8

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9174458c0ac494146c252ae6d4f0b68ba3c505d67c14d5ca10297a147b84fee7
MD5 273e230cef533e5d38cde9a84a4cafed
BLAKE2b-256 c4faadbcb48d9c7c0d08a89d6b291a013dc682cc350be97a25f98a92e0f48542

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 56660aa69a77edb16e2655724069f99708e0f997a6cfd3700a3b532988e2ec75
MD5 74cb041fb418440a497824b212efa6c3
BLAKE2b-256 d10aef0b500a920768e351548802ff5aef0633b25950ca2c47f17263b43f1fa9

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 81d8c771a95aea49bb801c05d792c6ec2b2976d09cb6f4cc221848469e1cf94f
MD5 29326302c09e3927f914f96696e53762
BLAKE2b-256 f3f7276175a1cafad55033e0a403e5a3655bfa85bf9fc429ad5f9d30f5610d3b

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 40b93ed240b19191a6f6d2ae768f8ac792e5471c1f14cf44ea66d16f7a7a1482
MD5 fde5b8199ee5242f2ceafab445db663d
BLAKE2b-256 21cfcc8f52a7fa239b4c4c2839dfe6faebe8e21016b7b4331be8b2e06cca4318

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 cb27b96edbd0a84389d700904bdbbe4b0d264b97a1c2150173614161f03049a4
MD5 730a1733ba0838b56a6cb55e2f6ac856
BLAKE2b-256 145ff10276eecfe83917f753fe41c546d5a226e46338e3a64ffc5c4c61ed30a5

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c3442182f114cb1183150261cd0d13171dc07693b4d3f9912c27686fa3553282
MD5 53e4b77c28440b9f973cbcc276ebffd6
BLAKE2b-256 d2384b5b179a1b97df2873d801d079edf710917bf96e6bd8ca963d801faf8f49

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp310-cp310-win32.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 d4eaf25efb3e30ee3ab0e57e778fb556a667169d3476da0767c2d2141cbdc315
MD5 23c8e6f7346b20fb31d0ceec545c5e69
BLAKE2b-256 c85b29e6344954d779443034f847d78c56df9b93a189b53440cb4fd08d22ca24

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 0120281bcdf66322a446ed77c8cc69fbecf5fd62cd99d211474678d70d844ca4
MD5 b1c7399ed8eb6ddbc6ba3a9718ea354c
BLAKE2b-256 0570f3571ebbbd7e470139f98f3f0fbdad1d3a5199d8d925803b461d6d228145

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp310-cp310-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 056a50eb37c4f72a00c0f158c31b52a2673ad749e063883384842884df2ed800
MD5 a40d34d665987ac90943bff2da6be6ec
BLAKE2b-256 51c4cfa0044e0e5b354aaa128b2f0c435ded14182d7cfbda9a43634fca0c271a

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp310-cp310-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp310-cp310-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 519d74dc426c208e03af215059854531d35c211649cc2950680dfa68db34d5c4
MD5 547765d0b4672b3a1da4789aaa188a26
BLAKE2b-256 9a222bde200b41728ce2efc4d17da693d1bf17392cc2694e1f200702efbdffbf

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 36f2dccf1f698342e2ef29884f4195356d566c673bf4bfafd0bacc6c2915f3b3
MD5 a82a50090e41bf1bb875a4ddb1dbc1b2
BLAKE2b-256 8455ce4aefcd1ea3894f77a9a7b8758b9aee9efb7819cfa7c2bec2b973f4de47

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a76bf88583c148e3e7441afd319a57019da074725f6fbfcb7d83c2c6eb3442bc
MD5 30303a061d8302820637eff4d7beaaed
BLAKE2b-256 91291b1f02bca92e8a622892430ecd9bb3551f71a0ee50fc1b7a7a0f23b028e0

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5af524973f786a2a58601e919148181e63e51079a8f007a91dce97de2db618d5
MD5 9df19d6c9824e951716dc70cda184440
BLAKE2b-256 ce68d918a3aa11f1d82557625328aac4658dc0f8e9bf59756df72e713ea29606

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6207b0a4c45ab3ad8e54b5dfe5a799cb79ef99b507f7ef6a7989c71646ac604c
MD5 e75fd8e8d9fc67d440453beb73f93935
BLAKE2b-256 e5309911a26954eb9ae5fb0fe1eff99783ffc257824892b4e6d8b9fd75de6012

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ac647db7ceb76e5607f8f3a0d75cb5db216b73c9b867d211706b4aa96316a58f
MD5 a29d633f4aa01490f09efc2b313f62f0
BLAKE2b-256 002cc966b8e6782f006796a76d8f67e8fee1cda78a44f2f0414a9635eb2cf398

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 96dccd537316af0cbd2554bbec041b7bfe382d54cce839c736685dc846660d02
MD5 c61e2d9f1f68addb6724f27df05e60a6
BLAKE2b-256 2c4c12e51d7af0b4e9255b8949b288490daf1c78360c2131fc048cd32f72be13

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp39-cp39-win32.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 3ba122e4256faa9d5b458492be151c42c7083a8edecd34cb686f2b9cd85042e7
MD5 65be4113f456ddd5205f98abbca572c2
BLAKE2b-256 981609be471f7b12621df5ea7a41bfafa79dc2b74e535d8847d369b6898b22d1

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 1f52c1ce17783632fd9f9fd8d5119751959c23f91ed18300c59afc88bb7a5e80
MD5 3b39575c222c604c5f02e11ff7841387
BLAKE2b-256 8702e6ffacbdb6ac551922ec89004d3a776ee9f2bad7b3fda2a80e7d20c9d666

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp39-cp39-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 7172f38f978745071b40c04c28d1465f33c040588b8e95fc2a910a99341699f5
MD5 6f42670a28946a647a4e2414fc10051c
BLAKE2b-256 3585814748bf5f1e353d007d8e3f5055bb2ff5c751b23514eb16f85a60139909

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp39-cp39-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp39-cp39-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 b991eadb2dfc3b61433f103224d102c3a32d3cf21a7c88902362d51e630e56ea
MD5 24325e3f833b885442ebfda82d89131b
BLAKE2b-256 2dc5ce5aa19fdd404425cc490d65ae9ce16ff4c8155ef9ae43b68255db3f0f2c

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 507c7fc77c723b522969f9273a60c02458e020562c2691bd265910db8ea2efcf
MD5 ba13c7c2c3811c5b4e50150d6f47ea2c
BLAKE2b-256 b82d9a565871daa75887523c5fc3829973debcb1b47e5fb136312deddb2b384e

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 348f519c9de37da1a2d640c6688c825c914758ccd14027b4cdef4e2158af531f
MD5 165656d7f8e61a42444e5e245f402038
BLAKE2b-256 1b08c4bda25ea0f5c92b733ea9ea28f3ae7ffa97dd0d0c38a4b0d0e6f41bb283

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 49c032c90150908735fca1af55beabf21054c03fa0be3af6ec8d58bd7ff81909
MD5 e119871bc6d1071379ed861d03b51104
BLAKE2b-256 257d61b81e306d8971a40279639f98652007eb2e218ffe8420ed95e1610407fa

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a1f7589d159b5b09c23b80e7a7e649368f7b2b34ff6a6096b762ef4eed449a09
MD5 b28b3db4d9f3d3df7313158a64591b0d
BLAKE2b-256 5c1cff82a3829897b76d9a4e5630596892580ae435bf6033bf0362e399abcabc

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4fa6e357124410f873e37878cf345c0cb420743c34cbab05ea1624e7fdba7098
MD5 4416739d31575f51dbc6f4c21a285ef1
BLAKE2b-256 7ad192e6e59a08dc900f12fa207d2237ba5e42a9ab43776fdad64e88ef342f1a

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 3574ddaa1c433f8253ac10a9f374a8e5f2cae217d0bcd15498ad25f801e2f395
MD5 2f763a73c493af55c6c8ffd52e3cc448
BLAKE2b-256 9862008ee81f5aec24d5c752a14664d0d1a335c23bfacd0238b746e0315e3a42

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp38-cp38-win32.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 252a21e450bac9774fdb38c9829662e819f42e86f34e1b434a8a674523c09b9d
MD5 03b6f77b497ded2aba494d9163e7d626
BLAKE2b-256 5b01341a75be9005bf1ed1b5cfa6fcfcea8a49e9b75ee3f010ad00ba4479943d

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 29458f3c4b263d1902dcea68f837ac114ddc0d304fddc0e3f7f7b1c9ffc5bc2d
MD5 d14b2fc1b80257d2317d195780e52669
BLAKE2b-256 fc9fac403c7d643e726d9bd7597f85676fa0e4bf1018ad83507322568c8764b7

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp38-cp38-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp38-cp38-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 232a715033641b828deb875f681cec87fc62194373acb11cfd04557a28f98614
MD5 64af8cfc6d787c8819d3b7f82b60dc86
BLAKE2b-256 c90e132751203a85bd8d57f7daf0a6298fca31514a84e9edb2ebadfb3cd3ac71

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp38-cp38-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp38-cp38-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 99643fb03db9ddc85d002975b54c4a50c0d3f61c1c8ef6dea870ff3083c62031
MD5 5b62a3e7986797b37466588156653ec2
BLAKE2b-256 99fd2a4664f98221bfac76ae7898557e9cc50e91cafada66d2c1198f2e937457

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4e31917cb8f8fafa35475660348fe58d8ddb96ea382e84c90422fcd44bee7b53
MD5 499879c6b5193fd88e745dd9b20ffd57
BLAKE2b-256 92ae9a5f50e4cfd7a82aba3ce559682295080c33c73e2629d574fedf27ed3637

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 18b036c527f0e9e0410835ad12bc4946e9c271c9ce512ff31d977a6d3f1a6370
MD5 ae76ff74076fae408f734a22e4bef123
BLAKE2b-256 dd5a656a4cc0ed363bf36c7ab4c45f00c0fdc1cbc89f3d53699c91523fee7a85

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4cd9de6fe5cb24fdd85321a40fc6d220350d780ca800297e2cd65585272b0b1a
MD5 bb65593afe4613e67cd499d348429902
BLAKE2b-256 c2e41138280305cb3b7637af4f1d336af49a711a39c8e328a92f07f7d7131cf1

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d6936f27cd4fa1510b045d91d177686220ada2e39a85482c5ee9b79107f33d4c
MD5 4cbe9cf2b6f628d85baaecf9da224ac2
BLAKE2b-256 da3e65494b7674920c5a4de7542665898c755d5ff5bef477d6186e35469b340a

See more details on using hashes here.

File details

Details for the file libstreamvbyte-0.3.6-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for libstreamvbyte-0.3.6-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 55d6f8c37a6175068db911c6a9df138884695ae97468691859768b5a611c98fe
MD5 30c89f2e5ee19c9930802eac325f9db3
BLAKE2b-256 77e3809e5c83ca73163a7a41d24ac8ef061b969268ba688f4b426db8454766ac

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page