mirror of
https://github.com/ultravideo/uvg266.git
synced 2024-11-27 19:24:06 +00:00
278cd4da9b
Now that WPP is on by default, Valgrind is finding memory leaks on these tests. It's not a priority so I'll just disable it for now. ==8120== Memcheck, a memory error detector ==8120== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al. ==8120== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info ==8120== Command: /home/travis/build/Venti-/kvazaar/src/.libs/lt-kvazaar -i mandelbrot_264x130.yuv --input-res=264x130 -o test.265 -p4 -r2 --owf=1 --threads=2 --tiles-height-split=u2 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3 ==8120== Disabling TMVP because tiles are used. Compiled: INTEL, flags: MMX SSE SSE2 Detected: INTEL, flags: MMX SSE SSE2 SSE3 SSSE3 SSE41 SSE42 Available: sse2(2) sse41(1) In use: sse2(1) sse41(1) Input: mandelbrot_264x130.yuv, output: test.265 Video size: 264x136 (input=264x130) ==8120== Conditional jump or move depends on uninitialised value(s) ==8120== at 0x4E5FEE5: kvz_threadqueue_job_dep_add (threadqueue.c:616) ==8120== by 0x4E3DEAB: encoder_state_worker_encode_children (encoderstate.c:432) ==8120== by 0x4E3E219: encoder_state_encode (encoderstate.c:649) ==8120== by 0x4E3DE35: encoder_state_worker_encode_children (encoderstate.c:417) ==8120== by 0x4E3E219: encoder_state_encode (encoderstate.c:649) ==8120== by 0x4E3DE35: encoder_state_worker_encode_children (encoderstate.c:417) ==8120== by 0x4E3E219: encoder_state_encode (encoderstate.c:649) ==8120== by 0x4E3ECBD: kvz_encode_one_frame (encoderstate.c:941) ==8120== by 0x4E4DA22: kvazaar_encode (kvazaar.c:229) ==8120== by 0x4E4E228: kvazaar_field_encoding_adapter (kvazaar.c:280) ==8120== by 0x40137F: main (encmain.c:436) ==8120== lt-kvazaar: threadqueue.c:618: kvz_threadqueue_job_dep_add: Assertion `job && depends_on' failed. ==8120== ==8120== HEAP SUMMARY: ==8120== in use at exit: 1,320,764 bytes in 568 blocks ==8120== total heap usage: 584 allocs, 16 frees, 1,330,691 bytes allocated ==8120== ==8120== 112 bytes in 1 blocks are definitely lost in loss record 27 of 88 ==8120== at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==8120== by 0x4E46BA5: kvz_image_alloc (image.c:49) ==8120== by 0x401E12: input_read_thread (encmain.c:183) ==8120== by 0x55EDE99: start_thread (pthread_create.c:308) ==8120== ==8120== 272 bytes in 1 blocks are possibly lost in loss record 41 of 88 ==8120== at 0x4C29DB4: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==8120== by 0x4012034: _dl_allocate_tls (dl-tls.c:297) ==8120== by 0x55EEABC: pthread_create@@GLIBC_2.2.5 (allocatestack.c:571) ==8120== by 0x4012B9: main (encmain.c:404) ==8120== ==8120== 544 bytes in 2 blocks are possibly lost in loss record 45 of 88 ==8120== at 0x4C29DB4: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==8120== by 0x4012034: _dl_allocate_tls (dl-tls.c:297) ==8120== by 0x55EEABC: pthread_create@@GLIBC_2.2.5 (allocatestack.c:571) ==8120== by 0x4E5EF65: kvz_threadqueue_init (threadqueue.c:308) ==8120== by 0x4E3BD2F: kvz_encoder_control_init (encoder.c:173) ==8120== by 0x4E4DD7E: kvazaar_open (kvazaar.c:80) ==8120== by 0x401112: main (encmain.c:346) ==8120== ==8120== 53,856 bytes in 1 blocks are possibly lost in loss record 81 of 88 ==8120== at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==8120== by 0x4E46BEC: kvz_image_alloc (image.c:59) ==8120== by 0x401E12: input_read_thread (encmain.c:183) ==8120== by 0x55EDE99: start_thread (pthread_create.c:308) ==8120== ==8120== LEAK SUMMARY: ==8120== definitely lost: 112 bytes in 1 blocks ==8120== indirectly lost: 0 bytes in 0 blocks ==8120== possibly lost: 54,672 bytes in 4 blocks ==8120== still reachable: 1,265,980 bytes in 563 blocks ==8120== suppressed: 0 bytes in 0 blocks ==8120== Reachable blocks (those to which a pointer was found) are not shown. ==8120== To see them, rerun with: --leak-check=full --show-reachable=yes ==8120== ==8120== For counts of detected and suppressed errors, rerun with: -v ==8120== Use --track-origins=yes to see where uninitialised values come from ==8120== ERROR SUMMARY: 5 errors from 5 contexts (suppressed: 2 from 2)
122 lines
4.9 KiB
YAML
122 lines
4.9 KiB
YAML
language: c
|
|
|
|
env:
|
|
global:
|
|
- TEST_DIM=264x130
|
|
- TEST_FRAMES=10
|
|
|
|
# Use container based infrastructure
|
|
sudo: false
|
|
|
|
# Use this the global requirements list for valgrind tests, because those are the most numerous.
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- autoconf
|
|
- libtool
|
|
- p7zip-full # to uncompress our own ffmpeg binary
|
|
- valgrind
|
|
- yasm
|
|
|
|
matrix:
|
|
fast_finish: true
|
|
|
|
include:
|
|
- compiler: clang
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- autoconf
|
|
- libtool
|
|
- yasm
|
|
|
|
- compiler: gcc-4.8
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- autoconf
|
|
- gcc-4.8
|
|
- libtool
|
|
- yasm
|
|
|
|
# We have some Mac specific code and Mac sometimes has odd build issues.
|
|
- os: osx
|
|
compiler: clang # gcc is actually clang on Travis OS X
|
|
|
|
# Check for external symbols without kvz_ prefix.
|
|
- compiler: gcc-4.8
|
|
script:
|
|
- ./autogen.sh
|
|
- ./configure && make
|
|
- (! nm -go --defined-only src/.libs/libkvazaar.a | grep -v ' kvz_') || (echo 'ERROR Only symbols prefixed with kvz_ should be exported from libkvazaar.'; false)
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- autoconf
|
|
- gcc-4.8
|
|
- libtool
|
|
- yasm
|
|
|
|
# Tests trying to use invalid input dimensions
|
|
- env: EXPECTED_STATUS=1 PARAMS="-i src/kvazaar --input-res=1x65 -o /dev/null"
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- autoconf
|
|
- libtool
|
|
- yasm
|
|
|
|
# These valgrind tests are slow, so they are performed with the minimum
|
|
# number of small frames and fast settings.
|
|
|
|
# Tests for interlace
|
|
- env: VALGRIND_TEST="--source-scan-type=tff -p0 --preset=ultrafast --threads=2 --owf=1 --wpp"
|
|
|
|
# Tests for owf, wpp and tiles. There is lots of separate branches of
|
|
# code related to owf=0 and owf!=0, which is why all permutations are
|
|
# tried.
|
|
- env: VALGRIND_TEST="-p4 -r1 --owf=1 --threads=0 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
- env: VALGRIND_TEST="-p4 -r1 --owf=0 --threads=0 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
- env: VALGRIND_TEST="-p4 -r2 --owf=1 --threads=2 --wpp --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
- env: VALGRIND_TEST="-p4 -r2 --owf=0 --threads=2 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
- env: VALGRIND_TEST="-p4 -r2 --owf=1 --threads=2 --tiles-height-split=u2 --no-wpp --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
- env: VALGRIND_TEST="-p4 -r2 --owf=0 --threads=2 --tiles-height-split=u2 --no-wpp --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
|
|
# Tests for rdoq, sao, deblock and signhide and subme.
|
|
- env: VALGRIND_TEST="-p0 -r1 --threads=2 --wpp --owf=1 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=1 --pu-depth-intra=2-3"
|
|
- env: VALGRIND_TEST="-p0 -r1 --threads=2 --wpp --owf=1 --rd=0 --no-rdoq --no-signhide --subme=0"
|
|
- env: VALGRIND_TEST="-p0 -r1 --threads=2 --wpp --owf=1 --rd=0 --no-deblock --no-sao --subme=0"
|
|
|
|
# Tests for all-intra.
|
|
- env: VALGRIND_TEST="-p1 --threads=2 --owf=1 --rd=1 --no-rdoq --no-deblock --no-sao --no-signhide"
|
|
- env: VALGRIND_TEST="-p1 --threads=2 --owf=1 --rd=2 --no-rdoq --no-deblock --no-sao --no-signhide --no-transform-skip"
|
|
|
|
# Tests for SMP and AMP blocks.
|
|
- env: TEST_FRAMES=4 VALGRIND_TEST="--threads=2 --owf=1 --wpp --smp"
|
|
- env: TEST_FRAMES=4 VALGRIND_TEST="--threads=2 --owf=1 --wpp --amp"
|
|
- env: TEST_FRAMES=4 VALGRIND_TEST="--threads=2 --owf=1 --wpp --smp --amp"
|
|
|
|
# Tests for rate control
|
|
- env: VALGRIND_TEST="--bitrate=500000 -p0 -r1 --owf=1 --threads=2 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
|
|
# Tests for GOP, with and without OWF.
|
|
- env: TEST_FRAMES=20 VALGRIND_TEST="--gop=8 -p0 --threads=2 --wpp --owf=1 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
- env: TEST_FRAMES=10 VALGRIND_TEST="--gop=8 -p0 --threads=2 --wpp --owf=4 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
- env: TEST_FRAMES=20 VALGRIND_TEST="--gop=8 -p0 --threads=2 --wpp --owf=0 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
|
|
install:
|
|
- source .travis-install.sh
|
|
|
|
script:
|
|
- source .travis-script.sh
|