]> git.proxmox.com Git - ceph.git/blame - ceph/src/isa-l/README.md
bump version to 18.2.2-pve1
[ceph.git] / ceph / src / isa-l / README.md
CommitLineData
7c673cae
FG
1Intel(R) Intelligent Storage Acceleration Library
2=================================================
3
f91f0fd5 4[![Build Status](https://travis-ci.org/intel/isa-l.svg?branch=master)](https://travis-ci.org/intel/isa-l)
20effc67 5[![Package on conda-forge](https://img.shields.io/conda/v/conda-forge/isa-l.svg)](https://anaconda.org/conda-forge/isa-l)
7c673cae 6
224ce89b
WB
7ISA-L is a collection of optimized low-level functions targeting storage
8applications. ISA-L includes:
9* Erasure codes - Fast block Reed-Solomon type erasure codes for any
10 encode/decode matrix in GF(2^8).
11* CRC - Fast implementations of cyclic redundancy check. Six different
12 polynomials supported.
13 - iscsi32, ieee32, t10dif, ecma64, iso64, jones64.
14* Raid - calculate and operate on XOR and P+Q parity found in common RAID
15 implementations.
16* Compression - Fast deflate-compatible data compression.
17* De-compression - Fast inflate-compatible data compression.
18
19Also see:
f91f0fd5
TL
20* [ISA-L for updates](https://github.com/intel/isa-l).
21* For crypto functions see [isa-l_crypto on github](https://github.com/intel/isa-l_crypto).
22* The [github wiki](https://github.com/intel/isa-l/wiki) including a list of
23 [distros/ports](https://github.com/intel/isa-l/wiki/Ports--Repos) offering binary packages.
24* ISA-L [mailing list](https://lists.01.org/hyperkitty/list/isal@lists.01.org/).
224ce89b 25* [Contributing](CONTRIBUTING.md).
7c673cae
FG
26
27Building ISA-L
224ce89b
WB
28--------------
29
30### Prerequisites
7c673cae 31
f91f0fd5
TL
32* Make: GNU 'make' or 'nmake' (Windows).
33* Optional: Building with autotools requires autoconf/automake packages.
34
35x86_64:
36* Assembler: nasm v2.11.01 or later (nasm v2.13 or better suggested for building in AVX512 support)
37 or yasm version 1.2.0 or later.
38* Compiler: gcc, clang, icc or VC compiler.
39
40aarch64:
41* Assembler: gas v2.24 or later.
42* Compiler: gcc v4.7 or later.
43
44other:
45* Compiler: Portable base functions are available that build with most C compilers.
7c673cae 46
224ce89b
WB
47### Autotools
48To build and install the library with autotools it is usually sufficient to run:
7c673cae
FG
49
50 ./autogen.sh
51 ./configure
52 make
53 sudo make install
54
224ce89b
WB
55### Makefile
56To use a standard makefile run:
7c673cae 57
224ce89b 58 make -f Makefile.unx
7c673cae 59
224ce89b 60### Windows
7c673cae
FG
61On Windows use nmake to build dll and static lib:
62
63 nmake -f Makefile.nmake
64
20effc67
TL
65or see [details on setting up environment here](doc/build.md).
66
224ce89b
WB
67### Other make targets
68Other targets include:
69* `make check` : create and run tests
70* `make tests` : create additional unit tests
71* `make perfs` : create included performance tests
72* `make ex` : build examples
73* `make other` : build other utilities such as compression file tests
f91f0fd5 74* `make doc` : build API manual