3 releases
0.1.2 | Nov 12, 2024 |
---|---|
0.1.1 | Oct 18, 2023 |
0.1.0 | Oct 12, 2023 |
#513 in Math
137 downloads per month
115KB
3K
SLoC
A crate to transpose data into and out of bitslice format, and perform various operations on bitsliced data.
See examples/
for basic usage examples.
This crate is in early stages. While I do not expect significant API changes, performance is currently likely significantly suboptimal, and it is missing many desirable features.
Portability
This crate has only been tested on bigendian machines.
It has intrinsics for AVX512 and for ARM Neon, and a fallback implementation which should compile to most any architecture.
For good performance, be sure to set rustflags = ["-C", "target-cpu=native"]
nice to have TODO
- benchmarks
- Perf improvements
- AVX2 implementation
- Flexible counter
- Flexible bit expand
- Runtime dynamic AIG logic
- LUT mapper
- reg mapper
- proc macro compiler
Dependencies
~315KB