]> git.proxmox.com Git - ceph.git/blame - ceph/src/crypto/isa-l/isa-l_crypto/README.md
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / crypto / isa-l / isa-l_crypto / README.md
CommitLineData
7c673cae
FG
1Intel(R) Intelligent Storage Acceleration Library Crypto Version
2================================================================
3
4ISA-L_crypto is a collection of optimized low-level functions targeting storage
5applications. ISA-L_crypto includes:
6
7* Multi-buffer hashes - run multiple hash jobs together on one core for much
8 better throughput than single-buffer versions.
1e59de90 9 - SHA1, SHA256, SHA512, MD5, SM3
7c673cae
FG
10
11* Multi-hash - Get the performance of multi-buffer hashing with a single-buffer
1e59de90 12 interface. Specification ref : [Multi-Hash white paper](https://www.intel.com/content/dam/www/public/us/en/documents/white-papers/multi-hash-paper.pdf)
7c673cae
FG
13
14* Multi-hash + murmur - run both together.
15
16* AES - block ciphers
17 - XTS, GCM, CBC
18
1e59de90 19* Rolling hash - Hash input in a window which moves through the input
7c673cae 20
1e59de90
TL
21Also see:
22* [ISA-L_crypto for updates](https://github.com/intel/isa-l_crypto).
23* For non-crypto ISA-L see [isa-l on github](https://github.com/intel/isa-l).
24* The [github wiki](https://github.com/intel/isa-l/wiki) covering isa-l and
25 isa-l crypto.
26* [Contributing](CONTRIBUTING.md).
7c673cae
FG
27
28Building ISA-L
1e59de90
TL
29--------------
30
31### Prerequisites
7c673cae 32
1e59de90
TL
33* Assembler: nasm v2.11.01 or later (nasm v2.13 or better suggested for building in AVX512 support)
34 or yasm version 1.2.0 or later.
35* Compiler: gcc, clang, icc or VC compiler.
36* Make: GNU 'make' or 'nmake' (Windows).
37* Optional: Building with autotools requires autoconf/automake packages.
7c673cae 38
1e59de90
TL
39### Autotools
40To build and install the library with autotools it is usually sufficient to run:
7c673cae
FG
41
42 ./autogen.sh
43 ./configure
44 make
45 sudo make install
46
1e59de90
TL
47### Makefile
48To use a standard makefile run:
7c673cae 49
1e59de90 50 make -f Makefile.unx
7c673cae 51
1e59de90 52### Windows
7c673cae
FG
53On Windows use nmake to build dll and static lib:
54
55 nmake -f Makefile.nmake
56
1e59de90
TL
57### Other make targets
58Other targets include:
59* `make check` : create and run tests
60* `make tests` : create additional unit tests
61* `make perfs` : create included performance tests
62* `make ex` : build examples
63* `make doc` : build API manual