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(arg0: numpy.ndarray[numpy.uint32]) -> numpy.ndarray[numpy.uint8]

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

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

# Decode an array of unsigned integers into an array of signed integers.
zigzag_decode(arg0: 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.5.tar.gz (765.1 kB view details)

Uploaded Source

Built Distributions

libstreamvbyte-0.3.5-cp311-cp311-win_amd64.whl (60.4 kB view details)

Uploaded CPython 3.11 Windows x86-64

libstreamvbyte-0.3.5-cp311-cp311-win32.whl (48.3 kB view details)

Uploaded CPython 3.11 Windows x86

libstreamvbyte-0.3.5-cp311-cp311-musllinux_1_1_x86_64.whl (607.0 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

libstreamvbyte-0.3.5-cp311-cp311-musllinux_1_1_i686.whl (663.0 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ i686

libstreamvbyte-0.3.5-cp311-cp311-musllinux_1_1_aarch64.whl (589.7 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ ARM64

libstreamvbyte-0.3.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (82.4 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

libstreamvbyte-0.3.5-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (87.3 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686

libstreamvbyte-0.3.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (78.2 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

libstreamvbyte-0.3.5-cp311-cp311-macosx_11_0_arm64.whl (54.9 kB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

libstreamvbyte-0.3.5-cp311-cp311-macosx_10_9_x86_64.whl (58.1 kB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

libstreamvbyte-0.3.5-cp310-cp310-win_amd64.whl (60.4 kB view details)

Uploaded CPython 3.10 Windows x86-64

libstreamvbyte-0.3.5-cp310-cp310-win32.whl (48.2 kB view details)

Uploaded CPython 3.10 Windows x86

libstreamvbyte-0.3.5-cp310-cp310-musllinux_1_1_x86_64.whl (607.0 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

libstreamvbyte-0.3.5-cp310-cp310-musllinux_1_1_i686.whl (663.1 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

libstreamvbyte-0.3.5-cp310-cp310-musllinux_1_1_aarch64.whl (589.7 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ ARM64

libstreamvbyte-0.3.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (82.4 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

libstreamvbyte-0.3.5-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (87.3 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686

libstreamvbyte-0.3.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (78.2 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

libstreamvbyte-0.3.5-cp310-cp310-macosx_11_0_arm64.whl (54.9 kB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

libstreamvbyte-0.3.5-cp310-cp310-macosx_10_9_x86_64.whl (58.1 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

libstreamvbyte-0.3.5-cp39-cp39-win_amd64.whl (60.3 kB view details)

Uploaded CPython 3.9 Windows x86-64

libstreamvbyte-0.3.5-cp39-cp39-win32.whl (48.3 kB view details)

Uploaded CPython 3.9 Windows x86

libstreamvbyte-0.3.5-cp39-cp39-musllinux_1_1_x86_64.whl (607.2 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

libstreamvbyte-0.3.5-cp39-cp39-musllinux_1_1_i686.whl (663.3 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

libstreamvbyte-0.3.5-cp39-cp39-musllinux_1_1_aarch64.whl (589.9 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ ARM64

libstreamvbyte-0.3.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (82.7 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

libstreamvbyte-0.3.5-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (87.5 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

libstreamvbyte-0.3.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (78.3 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

libstreamvbyte-0.3.5-cp39-cp39-macosx_11_0_arm64.whl (55.1 kB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

libstreamvbyte-0.3.5-cp39-cp39-macosx_10_9_x86_64.whl (58.2 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

libstreamvbyte-0.3.5-cp38-cp38-win_amd64.whl (60.2 kB view details)

Uploaded CPython 3.8 Windows x86-64

libstreamvbyte-0.3.5-cp38-cp38-win32.whl (48.2 kB view details)

Uploaded CPython 3.8 Windows x86

libstreamvbyte-0.3.5-cp38-cp38-musllinux_1_1_x86_64.whl (606.9 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

libstreamvbyte-0.3.5-cp38-cp38-musllinux_1_1_i686.whl (662.9 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ i686

libstreamvbyte-0.3.5-cp38-cp38-musllinux_1_1_aarch64.whl (589.5 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ ARM64

libstreamvbyte-0.3.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (82.4 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

libstreamvbyte-0.3.5-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl (87.1 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686

libstreamvbyte-0.3.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (78.1 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

libstreamvbyte-0.3.5-cp38-cp38-macosx_11_0_arm64.whl (54.9 kB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

libstreamvbyte-0.3.5-cp38-cp38-macosx_10_9_x86_64.whl (58.0 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: libstreamvbyte-0.3.5.tar.gz
  • Upload date:
  • Size: 765.1 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.5.tar.gz
Algorithm Hash digest
SHA256 a4596bfaf961e80b8041cd68baf8549929043c33ab8905d8ee3e2f190990bca0
MD5 1220f03ce9d0d579c731dc407731ff97
BLAKE2b-256 640514861147ebf047320a80080cae7538e002c5444d21b602328e996ac78e43

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 b6ed144c611cd2578d3dabc7be0b997d15f0d2a71bb57febbc7fb2257ca40667
MD5 6ad13041266e8aeb3b3eeabf52b624ed
BLAKE2b-256 7b3ad680e6a1b053d1771ce52c4f11d2ed58b15de5cc9c8e62a37f183a736732

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 4c9aaa6d7600e6d4b0c4f6f29e9ad7bf0ea4f14ca54847e512cfdeebb0fac4cd
MD5 583f2c4c001fd610ef9ecee58c320aa6
BLAKE2b-256 c3c77d7f228eeea8e7b3a185e9fc57980541418a0656119f0ae28c05a115c858

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 eb335ba67c49b6647b8ed918adf2587967e49dfb766ccd85955a3ad1d67b58ef
MD5 b7eb954c500a960ffdbafc2a9ade56be
BLAKE2b-256 cc8a330191c9753e8a835c583e534d7df591a06311f9a425d6694b314b50abd8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp311-cp311-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 aea92bb0899d638c41bc1fbe98b8b6769e112ea8694976c3a2da22311886ae7b
MD5 00601e2a3dd94ec10ea4587467b6b88b
BLAKE2b-256 ab2516232e2666e4722bde73be51ad1fbe8343e46505ead16ecc0ea8d70ddc24

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp311-cp311-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 0a88be65e89ea7dc35cdfa05578e8e3718779ad0042be3d8a002479f9ce8fb4d
MD5 54c298e3bdf1cd58d023ae5877c7fe3b
BLAKE2b-256 36f1352d022036c61ca7ec09069ac6ac1e07e0fb0512dd279c712690b383baa0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c7084e0f6543d4491df6adb7b97cbb62baea5a0091c2200f1ecf3d05f3cb8e4d
MD5 5f41d849bda86f9e1effd256190c309f
BLAKE2b-256 139e8796f18f7fce8673e4057e2f2f017f6becacf7c0b284b53c64f8e77ecf3d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 c19931086127e4546879ae269c5d4a4b82a83ae001126cf0366fac1f64710b61
MD5 14ad622e7098e703c84bdfe6de10b1bb
BLAKE2b-256 ecf3a9e7153a2067967e0d17c86b2e6fc079e495445f679eb16f8b212739d008

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8e20963aded10d5549b4e64e12c299a31e98ec60f3d50249a71a5799bb77b362
MD5 f2c1aa21bc624235251cc7f636c01e7b
BLAKE2b-256 2266f409d3abe4facda69bea578b298b9908253824ffc27154c3438696d605cc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 86f835f4b1538f0f78b5d37d61702efd28d273f7e27aff72e85dbe93bb8a87e1
MD5 7e8cd597b99f4ba7b480bb2fb3faadf3
BLAKE2b-256 af3c040bb468b0bc326cfade862c0a451ab8f209f74fe944a57cadbb74dc4811

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 93a540d0b4c7364808506eea6d049d800f9b654c6ce2de1dbf35a50a57467fae
MD5 eb1b0211a2ce90c18c6726fcc4a38ef7
BLAKE2b-256 6fca2d40fa472773dc63d3d465deda274680c893285cd700ea004ef3a006edaa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 7c6ca64f72dd9563395d15a3507213f4f0a3fbe93d666e054617b121a3ff2f1b
MD5 c0c5c5f028db9b8c6c1fcb17359956c5
BLAKE2b-256 0c425fbb0d18b0b9653160c544d9a3300d70c63269e5b15c03149e749512fbeb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 6f94fa9c0400b625534bea7e2dfe028ede25f175c4b048ab1b3b96e3b31c6ed9
MD5 da19ebfe79e3df0102dd3d187c447a72
BLAKE2b-256 21cf4450891619863342d51f71df2bf651a01bf574b5e070b69afe40d62ed2d3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 9e344befc16b6b28761d009e0d7bcda64ffe40d70d57c0335e6d24e952762d52
MD5 57c964c3af556ccfe542910f6081c961
BLAKE2b-256 e77252f2103f97a1c6b8b214b0c20bd9100ead4d8026978e447b562599541073

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 3d855ed28d9727745e68a5f6604600bbce4e0e260ea9970b12114ef3e3c82ec7
MD5 a918b720a465c6857d526429a9a15dcb
BLAKE2b-256 56d61ea572b9e5fcb89cd637b4a7f25907e8e4141fbc8c6483faadbb679fc4cb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp310-cp310-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 d05dce48c9d364ecb465f26f16ed5f50dfa948b366a57531871570f17a86f810
MD5 16a9ef8544ee2c46d599510beff893b7
BLAKE2b-256 77f0a375b5b777edcfe76092d9e750bdadd2b47f1056f7eb3e5ea8f5bf4eec9d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 199ec5e82f96114386b75dc92acd91f7dc5d3d1b4a00ca5e0913fe30638e4490
MD5 2be690b4ec26d28838c7cbd20d505486
BLAKE2b-256 797bdcacc384760e2efade63a293b56027b006eb4e7d7e5ceec1d3fb6113ae3c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 85f597a456fb755deb8ccaf96730140587e16e69c64c8e0d949f5bf34e2fe812
MD5 ace54243c44701c33e88b11ac6e9acff
BLAKE2b-256 e2446741cdb7371ce29b72614bb36904dbf7215253076d7a7ff194a2df4db737

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d70bc561000f6e0a287651bda5ed2c085af31b95bf94adbb5a763fa74e43c96a
MD5 371e158cdbd82d887f3f6c8b3920cd8f
BLAKE2b-256 8ca77556f3d11025a19ac683c2b97bf9112ef59124acc1d9ea1ae899c18a52fb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 32b5182d1237646005a0688a088fd520d4fdc2b2eea67c380e9723ea1a72300b
MD5 21bb7be7970ae3ae56c7f1cc07e4390c
BLAKE2b-256 bc421ea6d67bab24c847b9a3e2b7cf33cd24ec578b1c68efc835d8e52428f810

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 06abe4fba82008d4256a1f915057171e73bff8f4238f8c60d66d2db0da7f191c
MD5 c33943a59995d0a1006d0b274ee932f7
BLAKE2b-256 fff557b65bce19b4ffa0ed32b3a9f5dfe50459a58d981de91cb3a831259c7953

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 ceb5a005841ae23213f397e1deeca11be9d63cb064b84469ac5cc1f9119f01f8
MD5 9b3d7606fe8747973130b62d4a87ad6d
BLAKE2b-256 9dd88fd8c64d056a3d9f46daad858047ee2f8df5d4ffbc567ab9b720f2d4d448

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 8c46254a2c89397a02d49d6d631b687dd827a20abddd0ea8a3d058d330e05db5
MD5 e72b0b2f15515565bb98afac4a1ed1ba
BLAKE2b-256 4ed8429e81c1495a28d85cccc62304db2189b5fc0ba76b9f39c438204a8ec125

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 e574c11ee0b998f586bb9b077295deba1732aabd6f4f26e8425571ad7ff59535
MD5 1efd8f5f1a77e1edfd52cf17fde0802f
BLAKE2b-256 eb134ac3838713147dbebede884ba385ffa0ec12623c3a28a9f15157c924c7a6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 28da74cbede297496eccf325466691da13a14a652299a604c6c567c79603f1a9
MD5 e4ec33360d2778201da1e44db4fbd3c5
BLAKE2b-256 23cf4ab3caaaa02728e9b1093f06b1523e63dfd3a60aff629ebc22caa5662a31

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp39-cp39-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 85889a25213099c8f03fd95b70d7355245cd0166916809d1cfe2577a070641ef
MD5 d25eabd2ce2af5de8c6862785fde0df5
BLAKE2b-256 5856968945b7b09f814281d123c350884f666723adabebdf7010295f4f94416d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3f2acd98133a3256a87ac13bf68396f525aa49d70bd9a62ccde48a8bbc9f1ffb
MD5 57cc38c5033e58546bb23a29120eb690
BLAKE2b-256 d5952d502a59772a7272b9bc1ce344fc0d1039d74560c10c044d8b27a986cec5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 0277a8d1679c7aa93df110f0c8d22433ba1f6e66390aab2450fd927742185ee4
MD5 5e7d8542b1c64dcd5ccc776840fcf2f4
BLAKE2b-256 9d18421e1a07c3c5199a6825036cda5dc4f93ea3478cdb96d28e678c51489ba7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 93929edbb1d61bd63fc1cfabb89c1e70fd14de253445b5b8684a9ada5761775b
MD5 d19b731b098e35617686519f5325569c
BLAKE2b-256 9410b4300fc290e6b2b8c09b46fe758dbcc335add2b4769de93656c849f9596f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7bcf3ea0c91d7e08efe35b9194603fba9df0eb2ca792b3248366aec6c331cb66
MD5 875baeb64667ec973309d835beba625b
BLAKE2b-256 82c79190c466a85df5816c16265c5c1cd051ace9cbaf0b7336ccfda759e86995

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2ec730f8dee922f22c4f6909f0f606ad58720d25fc9debb8d2ff34737a9368ce
MD5 15ef95545a8445da8fee6e684e40c891
BLAKE2b-256 3f9c3137b52ee9798a36c0401edb30c1ef8c2089458083a1eee9b5595ed21aa2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 8c727c3d4bc2697382db95a430c0cce351dc36b435dfab3c45503912dcacad6e
MD5 39e9e309db7fd441eedb8fd7516c7be3
BLAKE2b-256 009e0dcacdc95987c5923b3f38904fd1cc09550678a55008850d668868a88ede

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 96e10c30cd7413cedc0a7ec12b427c4b840aff3286cb485ffbfd7fba73e740fb
MD5 cb9d23dac358966d99ffc2ed6c28405c
BLAKE2b-256 970b9ad887db07cd09078853bb2bf31d4c38bf3393c62ce08addaafb987efc15

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 3797bd06c9a49c228c8d2d02067a81affc77976315494f086651eec6b1b43c70
MD5 99d0a49e60d0bf083f0fd2dc20d1ae3b
BLAKE2b-256 35d0ca75eef7b1f993b03a1b06c560367e1f8e8c08449c16eff8e151b06ff95f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp38-cp38-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 417e962e32c4d4aa41092a18665957f59d30ebbb656b3f7be771733f0daebf62
MD5 3bc73e7c172043040e3f22fbd40cdada
BLAKE2b-256 0ad0b5ce882fad99f604d6fe930d27c80ba6d0e74811966e0a55975094af87b4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp38-cp38-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 4b32cd4c6c7b232989a701f8992012aaac03ef654ed6ff9a0f1df9cbd07ce0a6
MD5 95120ab992d3dd5e40d4a9f496527666
BLAKE2b-256 93f5d092736514e637a5e9d960b67434f81cc76bf3a1589dc10533ceb68cf497

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a32051257db2ee728691678da1ac447a0761785382c954e4e8381f6e6302d6b4
MD5 d4ba1bb62274f1cc4e5bce4db97239cf
BLAKE2b-256 6a5c57efe477f3208f11ccc0628f24876eaf1b7aa0ad5df4b9dd2b289ba56d10

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 bf7a86c537999e949db2aadbbdc5a8025a53ef25351dd76cc1cc930121cdf618
MD5 ef2fdf4fe3014eeabc3f92c396783e9a
BLAKE2b-256 3ebdc3862a1e934f78a8e768a2e248c8ce6792309ea4e56bcf78c3a12abb9dd2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c02e4b7a8de6062c18d8afc062f7441f2d46ef557ccb8591bc7d36c2d2a6ee27
MD5 3c518d87850f4b11410191971ea48c6b
BLAKE2b-256 417dd64d771db3a1a5759a5e4e9a52db264508decd96673f9beba489dacc2a7b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 eb411b5eed2bbe9c36790b2b8101d714a7407b701d0292f812d00d8215169871
MD5 d4f8d3a75991d4535f650b1195416454
BLAKE2b-256 bee01189b16f8f06f37adc082aabbd396f4cba27ce3cacb90763b1b5a38617db

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for libstreamvbyte-0.3.5-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 cf6701f712d04a48ea7e7ce8c1c8c12927532eb2145de53dd25d4f0129c4ca71
MD5 a4103b186e6af9e7a319bba09ec3bd4d
BLAKE2b-256 68fe1e84d3a204f5f72b0093d1e4ae3c8a935cd049ff88c3a01076dca1bf1fce

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