Age | Commit message (Collapse) | Author |
|
applied against a x86_64 configure with and without
--enable-vp9-highbitdepth
clang-tidy-3.7.1 \
-checks='-*,google-readability-braces-around-statements' \
-header-filter='.*' -fix
+ clang-format afterward
Change-Id: Ia2993ec64cf1eb3505d3bfb39068d9e44cfbce8d
|
|
Change-Id: I1fa81cc9cabf362a185fc3a53f1e58de533a41e5
|
|
Change-Id: I0d9ab85855eb723f653a7bb09b3d0d31dd6cfd2f
|
|
Change-Id: I6f2481509b0aa94338ed6185f80c4a6b65532280
|
|
+ general clean-up
Change-Id: Ib9dca3d1a3b7f0c1bedef2a26c9ff5ae1c289e8a
|
|
BUG=b:29583530
Change-Id: I296a0b81755e3086bc0a40cb126d0200ff03c095
|
|
there are sse2 equivalents which is a reasonable modern baseline
Change-Id: Ibbe536a5ad1c2cccef6bdcc75c13b3dde35a56ba
|
|
Replace MMX with SSE2.
Change-Id: I948ca1be6ed9b8e67f16555e226f1203726b7da6
|
|
Replace MMX with SSE2, reduce psadbw ops which may help Silvermont.
Change-Id: Ic7aec15245c9e5b2f3903dc7631f38e60be7c93d
|
|
this helps some toolchains (vs9) resolve the type of the parameter
Change-Id: I4acc8a844d1e55b766f66482bd6d32998174d70f
|
|
Change-Id: I9582a8d74990125b71e8fe620f7f3f2585a30798
|
|
average improvement ~3x-5x
Change-Id: Ie30748cfbedebbd544b7ef4f286055ccb7f60306
|
|
With the sad functions, and hopefully the variance functions soon,
moving to the vpx_dsp location, place the defines used in the
reference C code in a common location.
Change-Id: I4c8ce7778eb38a0a3ee674d2f1c488eda01cfeca
|
|
Create a new component, vpx_dsp, for code that can be shared
between codecs. Move the SAD code into the component.
This reduces the size of vpxenc/dec by 36k on x86_64 builds.
Change-Id: I73f837ddaecac6b350bf757af0cfe19c4ab9327a
|
|
On Nexus 7 speed -6 saw ~18% increase in perf.
Tested on Nexus 7, built with ndk r10d, gcc 4.9.
BUG=https://code.google.com/p/webm/issues/detail?id=908
Change-Id: I70ccdea0326750552ed946fb004507d6efe02d5c
|
|
On Nexus 7 speed -6 saw ~15% increase in perf.
Tested on Nexus 7, built with ndk r10d, gcc 4.9.
BUG=https://code.google.com/p/webm/issues/detail?id=908
Change-Id: I4b2006b644c488f42bf06d8a22ef0e6120a96bf9
|
|
On Nexus 7 speed -6 saw ~30% increase in perf.
Tested on Nexus 7, built with ndk r10d, gcc 4.9.
BUG=https://code.google.com/p/webm/issues/detail?id=908
Change-Id: Id12af7d1883243c23e6692e898aea82299633d58
|
|
previously 'bit_depth_', which is later used to calculate 'mask_', would
be left uninitialized in non-high-bitdepth builds
Change-Id: Ia72035f4645baf3bb0f191504f491b934cdf1e0e
|
|
ROUND_POWER_OF_TWO() is defined in vp9 headers currently, avoid it in
non-high-bitdepth code
Change-Id: Ic28b8f95ef7964800475ee8b35be5f9cea9afab6
|
|
Change-Id: If74510370723e497f4f33d988b8b398124edf69b
|
|
Change-Id: I1a74a1b032b198793ef9cc526327987f7799125f
(cherry picked from commit b1a6f6b9cb47eafe0ce86eaf0318612806091fe5)
|
|
All sad function that process above 32 consecutive elements are optimized
for AVX2:
vp9_sad64x64
vp9_sad64x32
vp9_sad32x64
vp9_sad32x32
vp9_sad32x16
vp9_sad64x64_avg
vp9_sad64x32_avg
vp9_sad32x64_avg
vp9_sad32x32_avg
vp9_sad32x16_avg
The functions that appeared as a hotspot is vp9_sad32x32 and vp9_sad64x64
vp9_sad32x32 was optimized by 68% and vp9_sad64x64 was optimized by 90%
both of them gave and overall ~2.3% user level gain
Change-Id: Iccf86b375a2b54c5fbbe685902ead0c9a561b9fd
|
|
Removed functions:
* vp9_sad_16x16_mmx
* vp9_sad_8x16_mmx
* vp9_sad_16x8_mmx
* vp9_sad_8x8_mmx
* vp9_sad_4x4_mmx
Change-Id: Ic5174b93b64d65d846f0c11e72cab149e9472bc3
|
|
in the function sad32x32x4d and sad64x64x4d the source is aligned to 16 bytes
and not to 32 bytes - the load is now unaligned.
Change-Id: I922fdba56d0936b5cf72e4503519f185645a168c
|
|
Change-Id: I3be8911121ef9a5f39f6c1a2e28f9e00972e0624
|
|
_t is reserved by posix
+ switch to camelcase
http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml#Type_Names
Change-Id: I60746bc93ba2446c1458a1f09fd1e49cc2e68534
|
|
|
|
and vp9_sad16x16_neon()
On a Nexus 7, vpxenc (in realtime mode, speed -6)
reported a performance improvement of ~17%.
Change-Id: I91e070cde2973451083d3f3d63b49b7886de9a85
|
|
used to wrap API functions to ensure full environment consistency as
opposed to the renamed ASM_REGISTER_STATE_CHECK which is used with
assembly functions.
currently checks the FPU tag word in x86/x86_64 gcc builds to ensure
emms has been called.
Change-Id: Ie241772dbf903d33d516a1add4c8c6783f2e1490
|
|
tests failing under Win32/Win64
+ sad_test: add missing avx2 functions (disabled)
Change-Id: I8224fba2b270f6039ab1877d71e1e512f0081856
|
|
As a side-effect, the sad unit tests for VP8 and VP9
had to be separated.
Fixes a bug in original patch:
(https://gerrit.chromium.org/gerrit/#/c/70163/8)
that was reverted due to a nightly test failure.
Change-Id: Ia2a4e9e278fd3c89d6c3c82fcc6381320ec2a8a6
|
|
This reverts commit 916550428db803c54c993ff9d3c34b9b0bcebb7c
Change-Id: I500822b03f09c64ff6ec5396c68edee9ca3b75cb
|
|
As a side-effect, the sad unit tests for VP8 and VP9
had to be separated.
Change-Id: I068cc2391eed51e9b140ea6aba78338c5fec8d71
|
|
This reverts commit 7ab9a9587b96db4edce6be916c1f02297a9555ff
Nightly test http://build.webmproject.org/jenkins/view/libvpx-nightly-tests/job/libvpx%20unit%20tests%20(valgrind-2)/arch=x86_64-linux-gcc,filter=-*VP8*:*Large.*/276/console
Failed
This patch did not address all the assembly issues
some of the vp8 assembly counts on 5 arguments being passed in to this function:
one example : vp8_sad8x16_wmt
Please address or split this into vp9 and vp8 patches.
Change-Id: I78afcc171649894f887bb8ee3c66de24aaddc7ca
|
|
As a side-effect, the max_sad check is removed from the
C-implementation of VP8, for consistency with VP9, and to
ensure that the SAD tests common to VP8/VP9 pass.
That will make the VP8 C implementation of sad a little slower
but given that is rarely used in practice, the impact will be
minimal.
Change-Id: I7f43089fdea047fbf1862e40c21e4715c30f07ca
|
|
Change-Id: I7a1a7190dc32c65846a897a3162a02d63e59719f
|
|
Change-Id: I08fa0e90039186cd237001b7e43b1eabe6d326a3
|
|
- break the platform sections a bit more visibly
- add #endif comments on long blocks
Change-Id: I8612f19755ea37efd6dac2918f51deee4a2c483e
|
|
Change-Id: I57a94d2f9e26a872a20d805a506855a20e61c356
|
|
Suggested by James Zern to clear out cpplint warnings for all unit
test code.
Change-Id: I731a3fa4d2a257eb9ef733426ba84286fbd7ea34
|
|
also fixed bug in sad calcs
Change-Id: I6571fcbe37556c16ae32be66dc0fd879852aac1d
|
|
Enable use_x86inc as a commandline option. Fix Bug with sse2 when
x86inc is disabled. Adds Sad asm protection to x86inc protection
Change-Id: Iee0f9dd235ea10e8ace512eb362ba9bebe8c9df6
|
|
Change-Id: I47e81b51f072abdb276bdec85423febba34b5f81
|
|
add ClearSystemState() to reset MMX registers avoiding corrupting
subsequent tests.
Change-Id: I668deb09aa7aa467709776e5819f936910698bc0
|
|
|
|
The encoding time for bus at CIF goes from 661s to 625s. This commit
also enabled unit test of sad8x4/4x8 in sad_test.cc.
Change-Id: If3d10ebb56bda584bdb69bcf056599d580b12cb1
|
|
Encoding time of crew (CIF, first 50 frames) @ 1500kbps goes from 4min56
to 4min42.
Change-Id: I92c0c8b32980d2ae7c6dafc8b883a2c7fcd14a9f
|
|
Fixes:
error C2121: '#' : invalid character : possibly the result of a macro expansion
Change-Id: I63d7ebba29f3a3cbb546406be39270290e9dc47d
(cherry picked from commit a91e5b4fdc4e81352fa3a65c7fc795527eee6b07)
|
|
Update the function prototypes to match between VP9 and VP8.
Change-Id: If58965073989e87df3b62b67a030ec6ce23ca04f
|
|
Change-Id: I06b5ba5c457944cfa4cd9f53c3bd8cda132439c2
|