Go to file
Ruben Vorderman 94ec6026ce Create headers based on compression parameters.
Instead of using a constant as default zlib header, create the header on the fly. Both zlib
header bytes depend on the wbits and compression level used.
Make sure that ISA-L compression level 0 is advertised as the fastest compression in
both the gzip header (setting xfl flag to 0x04) and the zlib header (as 0, fastest, other levels are 1, fast).

Change-Id: I1f30e4397a0f5fcf6df593c40178e7d6f6c05328
Signed-off-by: Ruben Vorderman <r.h.p.vorderman@lumc.nl>
2021-08-23 09:48:10 -07:00
crc build: Remove unneeded file types.h 2021-06-10 09:35:43 -07:00
doc doc: Update minimum nasm recommendation and details 2021-05-27 17:44:31 -07:00
erasure_code build: Remove unneeded file types.h 2021-06-10 09:35:43 -07:00
examples/ec ex: Add makefile to build examples from installed lib 2021-06-03 17:53:20 -07:00
igzip Create headers based on compression parameters. 2021-08-23 09:48:10 -07:00
include build: Remove unneeded file types.h 2021-06-10 09:35:43 -07:00
mem build: Remove unneeded file types.h 2021-06-10 09:35:43 -07:00
programs build: Bump revision to 2.30 2020-11-06 18:08:16 -07:00
raid build: Remove unneeded file types.h 2021-06-10 09:35:43 -07:00
tests/fuzz aarch64: Cleanup build issues 2019-03-20 10:15:40 +08:00
tools build: Fix missing ms function export 2021-06-07 18:30:08 -07:00
.gitignore build: Add gitignore 2019-05-01 16:48:10 -07:00
.travis.yml build: Change travis osx to use std brew 2021-05-21 19:44:39 -07:00
autogen.sh Initial commit isa-l v2.14.1 2016-02-24 14:54:34 -07:00
configure.ac build: Bump revision to 2.30 2020-11-06 18:08:16 -07:00
CONTRIBUTING.md doc: Update mailing list link 2019-10-16 17:13:54 -07:00
Doxyfile build: Remove unneeded file types.h 2021-06-10 09:35:43 -07:00
isa-l.def build: Fix missing ms function export 2021-06-07 18:30:08 -07:00
libisal.pc.in Initial commit isa-l v2.14.1 2016-02-24 14:54:34 -07:00
LICENSE build: Bump revision to 2.19 2017-06-26 04:47:40 -04:00
make.inc build: Remove unneeded file types.h 2021-06-10 09:35:43 -07:00
Makefile.am build: Remove unneeded file types.h 2021-06-10 09:35:43 -07:00
Makefile.nmake build: Fix missing ms function export 2021-06-07 18:30:08 -07:00
Makefile.unx build: Add auto regenerate of nmake file 2020-03-10 14:00:05 -07:00
README.md doc: Update minimum nasm recommendation and details 2021-05-27 17:44:31 -07:00
Release_notes.txt Update release notes for v2.30 additions 2020-11-04 14:59:33 -07:00

Intel(R) Intelligent Storage Acceleration Library

Build Status Package on conda-forge

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:

Building ISA-L

Prerequisites

  • Make: GNU 'make' or 'nmake' (Windows).
  • Optional: Building with autotools requires autoconf/automake packages.

x86_64:

  • Assembler: nasm. Version 2.15 or later suggested (other versions of nasm and yasm may build but with limited function support.
  • Compiler: gcc, clang, icc or VC compiler.

aarch64:

  • Assembler: gas v2.24 or later.
  • Compiler: gcc v4.7 or later.

other:

  • Compiler: Portable base functions are available that build with most C compilers.

Autotools

To build and install the library with autotools it is usually sufficient to run:

./autogen.sh
./configure
make
sudo make install

Makefile

To use a standard makefile run:

make -f Makefile.unx

Windows

On Windows use nmake to build dll and static lib:

nmake -f Makefile.nmake

or see details on setting up environment here.

Other make targets

Other targets include:

  • make check : create and run tests
  • make tests : create additional unit tests
  • make perfs : create included performance tests
  • make ex : build examples
  • make other : build other utilities such as compression file tests
  • make doc : build API manual