Port details |
- py-bitshuffle Bitshuffle filter for improving typed data compression
- 0.5.1 archivers
=0 Package not present on quarterly.This port was created during this quarter. It will be in the next quarterly branch but not the current one.
- Maintainer: sunpoet@FreeBSD.org
- Port Added: 2024-03-23 15:00:10
- Last Update: 2024-03-23 14:30:36
- Commit Hash: c8b4d6d
- Also Listed In: python
- License: MIT
- WWW:
- https://github.com/kiyo-masui/bitshuffle
- Description:
- Bitshuffle is an algorithm that rearranges typed, binary data for improving
compression, as well as a python/C package that implements this algorithm within
the Numpy framework.
The library can be used along side HDF5 to compress and decompress datasets and
is integrated through the dynamically loaded filters framework. Bitshuffle is
HDF5 filter number 32008.
Algorithmically, Bitshuffle is closely related to HDF5's Shuffle filter except
it operates at the bit level instead of the byte level. Arranging a typed data
array in to a matrix with the elements as the rows and the bits within the
elements as the columns, Bitshuffle "transposes" the matrix, such that all the
least-significant-bits are in a row, etc.
This does not in itself compress data, only rearranges it for more efficient
compression. To perform the actual compression you will need a compression
library. Bitshuffle has been designed to be well matched to Marc Lehmann's LZF
as well as LZ4 and ZSTD. Note that because Bitshuffle modifies the data at the
bit level, sophisticated entropy reducing compression libraries such as GZIP and
BZIP are unlikely to achieve significantly better compression than simpler and
faster duplicate-string-elimination algorithms such as LZF, LZ4 and ZSTD.
Bitshuffle thus includes routines (and HDF5 filter options) to apply LZ4 and
ZSTD compression to each block after shuffling.
- ¦ ¦ ¦ ¦
- Manual pages:
- FreshPorts has no man page information for this port.
- pkg-plist: as obtained via:
make generate-plist - There is no configure plist information for this port.
- Dependency lines:
-
- ${PYTHON_PKGNAMEPREFIX}bitshuffle>0:archivers/py-bitshuffle@${PY_FLAVOR}
- To install the port:
- cd /usr/ports/archivers/py-bitshuffle/ && make install clean
- To add the package, run one of these commands:
- pkg install archivers/py-bitshuffle
- pkg install py39-bitshuffle
NOTE: If this package has multiple flavors (see below), then use one of them instead of the name specified above. NOTE: This is a Python port. Instead of py39-bitshuffle listed in the above command, you can pick from the names under the Packages section.- PKGNAME: py39-bitshuffle
- Package flavors (<flavor>: <package>)
- distinfo:
- TIMESTAMP = 1710712300
SHA256 (bitshuffle-0.5.1.tar.gz) = 988f224739aa6858475a4c59172968c7b51cc657d2249580c8f96848708fbae3
SIZE (bitshuffle-0.5.1.tar.gz) = 229441
Packages (timestamps in pop-ups are UTC):
- Dependencies
- NOTE: FreshPorts displays only information on required and default dependencies. Optional dependencies are not covered.
- Build dependencies:
-
- py39-h5py>=2.4.0 : science/py-h5py@py39
- py39-numpy>=0,1 : math/py-numpy@py39
- py39-setuptools>=0.7 : devel/py-setuptools@py39
- py39-wheel>=0 : devel/py-wheel@py39
- pkgconf>=1.3.0_1 : devel/pkgconf
- cython-3.9 : lang/cython@py39
- python3.9 : lang/python39
- py39-build>=0 : devel/py-build@py39
- py39-installer>=0 : devel/py-installer@py39
- Test dependencies:
-
- python3.9 : lang/python39
- Runtime dependencies:
-
- py39-h5py>=2.4.0 : science/py-h5py@py39
- py39-numpy>=1.6.1,1 : math/py-numpy@py39
- py39-setuptools>=0.7 : devel/py-setuptools@py39
- python3.9 : lang/python39
- There are no ports dependent upon this port
Configuration Options:
- No options to configure
- Options name:
- archivers_py-bitshuffle
- USES:
- pkgconfig python
- FreshPorts was unable to extract/find any pkg message
- Master Sites:
|
Commit History - (may be incomplete: for full details, see links to repositories near top of page) |
Commit | Credits | Log message |
0.5.1 23 Mar 2024 14:30:36 |
Po-Chuan Hsieh (sunpoet) |
archivers/py-bitshuffle: Add py-bitshuffle 0.5.1
Bitshuffle is an algorithm that rearranges typed, binary data for improving
compression, as well as a python/C package that implements this algorithm within
the Numpy framework.
The library can be used along side HDF5 to compress and decompress datasets and
is integrated through the dynamically loaded filters framework. Bitshuffle is
HDF5 filter number 32008.
Algorithmically, Bitshuffle is closely related to HDF5's Shuffle filter except
it operates at the bit level instead of the byte level. Arranging a typed data
array in to a matrix with the elements as the rows and the bits within the
elements as the columns, Bitshuffle "transposes" the matrix, such that all the
least-significant-bits are in a row, etc.
This does not in itself compress data, only rearranges it for more efficient
compression. To perform the actual compression you will need a compression
library. Bitshuffle has been designed to be well matched to Marc Lehmann's LZF
as well as LZ4 and ZSTD. Note that because Bitshuffle modifies the data at the
bit level, sophisticated entropy reducing compression libraries such as GZIP and
BZIP are unlikely to achieve significantly better compression than simpler and
faster duplicate-string-elimination algorithms such as LZF, LZ4 and ZSTD.
Bitshuffle thus includes routines (and HDF5 filter options) to apply LZ4 and
ZSTD compression to each block after shuffling. |