ISA-L is a collection of optimized low-level functions targeting storage applications. ISA-L includes:
- Erasure codes - Fast block Reed-Solomon type erasure codes for any encode/decode matrix in GF(2^8).
- CRC - Fast implementations of cyclic redundancy check. Six different
polynomials supported.
- iscsi32, ieee32, t10dif, ecma64, iso64, jones64.
- Raid - calculate and operate on XOR and P+Q parity found in common RAID implementations.
- Compression - Fast deflate-compatible data compression.
- De-compression - Fast inflate-compatible data compression.
Also see:
- ISA-L for updates.
- For crypto functions see isa-l_crypto on github.
- The github wiki.
- ISA-L mailing list.
- Contributing.
- yasm version 1.2.0 or later or nasm v2.11.01 or later.
- gcc, clang, icc or VC compiler.
- GNU 'make' or 'nmake' (Windows).
- Building with autotools requires autoconf/automake packages.
To build and install the library with autotools it is usually sufficient to run:
./autogen.sh
./configure
make
sudo make install
To use a standard makefile run:
make -f Makefile.unx
On Windows use nmake to build dll and static lib:
nmake -f Makefile.nmake
Other targets include:
make check
: create and run testsmake tests
: create additional unit testsmake perfs
: create included performance testsmake ex
: build examplesmake other
: build other utilities such as compression file tests