INSTALL.md: add section discussing how to enable CPU specific optimizations
This commit is contained in:
parent
533fa2fdee
commit
6239ed7be4
24
INSTALL.md
24
INSTALL.md
|
@ -9,7 +9,7 @@ To build the library, type from source tree directory:
|
|||
```
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ..
|
||||
cmake .. -DCMAKE_BUILD_TYPE=Release
|
||||
make
|
||||
```
|
||||
Binaries are then located in the 'bin' directory.
|
||||
|
@ -63,6 +63,28 @@ Note 4 : On MacOS, if it does not work, try adding the following flag to the cma
|
|||
You can use cmake to generate the project files for the IDE you are using (VC2010, XCode, etc).
|
||||
Type 'cmake --help' for available generators on your platform.
|
||||
|
||||
# Enabling CPU specific optimizations
|
||||
|
||||
For Intel/AMD processors, OpenJPEG implements optimizations using the SSE4.1
|
||||
instruction set (for example, for the 9x7 inverse MCT transform) and the AVX2
|
||||
instruction set (for example, for the 5x3 inverse discrete wavelet transform).
|
||||
Currently, those optimizations are only available if OpenJPEG is built to
|
||||
use those instruction sets (and the resulting binary will only run on compatible
|
||||
CPUs)
|
||||
|
||||
With gcc/clang, it is possible to enable those instruction sets with the following :
|
||||
|
||||
cmake -DCMAKE_C_FLAGS="-O3 -msse4.1 -DNDEBUG" ..
|
||||
|
||||
cmake -DCMAKE_C_FLAGS="-O3 -mavx2 -DNDEBUG" ..
|
||||
|
||||
(AVX2 implies SSE4.1)
|
||||
|
||||
Or if the binary is dedicated to run on the machine where it has
|
||||
been compiled :
|
||||
|
||||
cmake -DCMAKE_C_FLAGS="-O3 -march=native -DNDEBUG" ..
|
||||
|
||||
# Modifying OpenJPEG
|
||||
|
||||
Before committing changes, run:
|
||||
|
|
Loading…
Reference in New Issue