summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2020-04-30 11:52:42 +0200
committerEven Rouault <even.rouault@spatialys.com>2020-05-20 20:30:21 +0200
commit07d1f775a1ef95496b0c78b18f671dac41983320 (patch)
tree6e69f9d1e92244c2fc1ec4d3b9b4975e7b37b6c4 /tools
parent97eb7e0bf17b476d516262e0af462ec7eeb8f505 (diff)
Add multithreaded support in the DWT encoder.
Update the bench_dwt utility to have a -decode/-encode switch Measured performance gains for DWT encoder on a Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz (4 cores, hyper threaded) Encoding time: $ ./bin/bench_dwt -encode -num_threads 1 time for dwt_encode: total = 8.348 s, wallclock = 8.352 s $ ./bin/bench_dwt -encode -num_threads 2 time for dwt_encode: total = 9.776 s, wallclock = 4.904 s $ ./bin/bench_dwt -encode -num_threads 4 time for dwt_encode: total = 13.188 s, wallclock = 3.310 s $ ./bin/bench_dwt -encode -num_threads 8 time for dwt_encode: total = 30.024 s, wallclock = 4.064 s Scaling is probably limited by memory access patterns causing memory access to be the bottleneck. The slightly worse results with threads==8 than with thread==4 is due to hyperthreading being not appropriate here.
Diffstat (limited to 'tools')
-rw-r--r--tools/ctest_scripts/travis-ci.cmake3
1 files changed, 3 insertions, 0 deletions
diff --git a/tools/ctest_scripts/travis-ci.cmake b/tools/ctest_scripts/travis-ci.cmake
index 75ed6f6b..0d54773c 100644
--- a/tools/ctest_scripts/travis-ci.cmake
+++ b/tools/ctest_scripts/travis-ci.cmake
@@ -121,6 +121,9 @@ BUILD_TESTING:BOOL=${BUILD_TESTING}
# Build Thirdparty, useful but not required for test suite
BUILD_THIRDPARTY:BOOL=TRUE
+# Build unit tests that test subcomponents of libopenjp2 (e.g. DWT)
+BUILD_UNIT_TESTS:BOOL=TRUE
+
# JPEG2000 test files are available with git clone https://github.com/uclouvain/openjpeg-data.git
OPJ_DATA_ROOT:PATH=$ENV{PWD}/data