ref: 121e161115d86c65101ec9f1ec1564cdd9e58598
parent: 7ba9d31e3f547128ea3eed9cddc94caf160f916a
author: Jim Bankoski <[email protected]>
date: Fri Dec 9 10:05:59 EST 2016
vp8: adds multithread testing. The test is disabled because of TSAN errors until we resolve BUG=webm:851 Change-Id: I0b21c8d815bc1ea365da024b1e2ee5e1fc5715c2
--- a/test/test_vector_test.cc
+++ b/test/test_vector_test.cc
@@ -145,7 +145,7 @@
ASSERT_NO_FATAL_FAILURE(RunLoop(video.get(), cfg));
}
-// Test VP8 decode in serial mode with single thread.
+// Test VP8 decode in serial mode with single thread and with 8 threads.
// NOTE: VP8 only support serial mode.
#if CONFIG_VP8_DECODER
VP8_INSTANTIATE_TEST_CASE(
@@ -152,10 +152,24 @@
TestVectorTest,
::testing::Combine(
::testing::Values(0), // Serial Mode.
- ::testing::Values(1), // Single thread.
+ ::testing::Values(1), // Single thread and 8 threads.
::testing::ValuesIn(libvpx_test::kVP8TestVectors,
libvpx_test::kVP8TestVectors +
libvpx_test::kNumVP8TestVectors)));
+
+// Test VP8 decode in with different numbers of threads.
+INSTANTIATE_TEST_CASE_P(
+ DISABLED_VP8MultiThreaded, TestVectorTest,
+ ::testing::Combine(
+ ::testing::Values(
+ static_cast<const libvpx_test::CodecFactory *>(&libvpx_test::kVP8)),
+ ::testing::Combine(
+ ::testing::Values(0), // Serial Mode.
+ ::testing::Range(1, 8), // With 1 ~ 8 threads.
+ ::testing::ValuesIn(libvpx_test::kVP8TestVectors,
+ libvpx_test::kVP8TestVectors +
+ libvpx_test::kNumVP8TestVectors))));
+
#endif // CONFIG_VP8_DECODER
// Test VP9 decode in serial mode with single thread.