Enable vp9 row-based multithreading.
Improves current multi-threading performance (for the same number of threads) by: 5%-8% speedup for 2 threads, ~15% for 4 threads on Linux/Mac with standalone libvpx. ~6% speedup on AppRTC on Linux/Mac with 4 threads. BUG=None Review-Url: https://codereview.webrtc.org/2776803002 Cr-Commit-Position: refs/heads/master@{#17432}
This commit is contained in:
@ -449,6 +449,9 @@ int VP9EncoderImpl::InitAndSetControlSettings(const VideoCodec* inst) {
|
||||
// The number tile columns will be capped by the encoder based on image size
|
||||
// (minimum width of tile column is 256 pixels, maximum is 4096).
|
||||
vpx_codec_control(encoder_, VP9E_SET_TILE_COLUMNS, (config_->g_threads >> 1));
|
||||
|
||||
// Turn on row-based multithreading.
|
||||
vpx_codec_control(encoder_, VP9E_SET_ROW_MT, 1);
|
||||
#if !defined(WEBRTC_ARCH_ARM) && !defined(WEBRTC_ARCH_ARM64) && \
|
||||
!defined(ANDROID)
|
||||
// Note denoiser is still off by default until further testing/optimization,
|
||||
|
||||
Reference in New Issue
Block a user