Commit bd4fcb98 authored by fbarchard@google.com's avatar fbarchard@google.com

Switch to 128x72 for default testing size when not benchmarking.

BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/935004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@442 16f28f9a-4ce2-e073-06de-1de4eb20be90
parent 3bb60b37
Name: libyuv Name: libyuv
URL: http://code.google.com/p/libyuv/ URL: http://code.google.com/p/libyuv/
Version: 439 Version: 442
License: BSD License: BSD
License File: LICENSE License File: LICENSE
......
...@@ -11,6 +11,6 @@ ...@@ -11,6 +11,6 @@
#ifndef INCLUDE_LIBYUV_VERSION_H_ // NOLINT #ifndef INCLUDE_LIBYUV_VERSION_H_ // NOLINT
#define INCLUDE_LIBYUV_VERSION_H_ #define INCLUDE_LIBYUV_VERSION_H_
#define LIBYUV_VERSION 439 #define LIBYUV_VERSION 442
#endif // INCLUDE_LIBYUV_VERSION_H_ NOLINT #endif // INCLUDE_LIBYUV_VERSION_H_ NOLINT
...@@ -30,33 +30,9 @@ static uint32 ReferenceHashDjb2(const uint8* src, uint64 count, uint32 seed) { ...@@ -30,33 +30,9 @@ static uint32 ReferenceHashDjb2(const uint8* src, uint64 count, uint32 seed) {
return hash; return hash;
} }
TEST_F(libyuvTest, TestDjb2) {
const int kMaxTest = 2049;
align_buffer_16(src_a, kMaxTest)
for (int i = 0; i < kMaxTest; ++i) {
src_a[i] = i;
}
for (int i = 0; i < kMaxTest; ++i) {
uint32 h1 = HashDjb2(src_a, kMaxTest, 5381);
uint32 h2 = ReferenceHashDjb2(src_a, kMaxTest, 5381);
EXPECT_EQ(h1, h2);
}
// Hash constant generator using for tables in compare
int h = 1;
for (int i = 0; i <= 16 ; ++i) {
printf("%08x ", h);
h *= 33;
}
printf("\n");
free_aligned_buffer_16(src_a)
}
TEST_F(libyuvTest, BenchmakDjb2_C) { TEST_F(libyuvTest, BenchmakDjb2_C) {
const int kMaxTest = benchmark_width_ * benchmark_height_; const int kMaxTest = benchmark_width_ * benchmark_height_;
align_buffer_16(src_a, kMaxTest) align_buffer_16(src_a, kMaxTest)
for (int i = 0; i < kMaxTest; ++i) { for (int i = 0; i < kMaxTest; ++i) {
src_a[i] = i; src_a[i] = i;
} }
...@@ -90,7 +66,6 @@ TEST_F(libyuvTest, BenchmakDjb2_OPT) { ...@@ -90,7 +66,6 @@ TEST_F(libyuvTest, BenchmakDjb2_OPT) {
TEST_F(libyuvTest, BenchmakDjb2_Unaligned_OPT) { TEST_F(libyuvTest, BenchmakDjb2_Unaligned_OPT) {
const int kMaxTest = benchmark_width_ * benchmark_height_; const int kMaxTest = benchmark_width_ * benchmark_height_;
align_buffer_16(src_a, kMaxTest + 1) align_buffer_16(src_a, kMaxTest + 1)
for (int i = 0; i < kMaxTest; ++i) { for (int i = 0; i < kMaxTest; ++i) {
src_a[i + 1] = i; src_a[i + 1] = i;
} }
...@@ -107,6 +82,8 @@ TEST_F(libyuvTest, BenchmarkSumSquareError_C) { ...@@ -107,6 +82,8 @@ TEST_F(libyuvTest, BenchmarkSumSquareError_C) {
const int kMaxWidth = 4096 * 3; const int kMaxWidth = 4096 * 3;
align_buffer_16(src_a, kMaxWidth) align_buffer_16(src_a, kMaxWidth)
align_buffer_16(src_b, kMaxWidth) align_buffer_16(src_b, kMaxWidth)
memset(src_a, 0, kMaxWidth);
memset(src_b, 0, kMaxWidth);
MaskCpuFlags(0); MaskCpuFlags(0);
memcpy(src_a, "test0123test4567", 16); memcpy(src_a, "test0123test4567", 16);
...@@ -118,15 +95,17 @@ TEST_F(libyuvTest, BenchmarkSumSquareError_C) { ...@@ -118,15 +95,17 @@ TEST_F(libyuvTest, BenchmarkSumSquareError_C) {
src_a[i] = i; src_a[i] = i;
src_b[i] = i; src_b[i] = i;
} }
memset(src_a, 0, kMaxWidth);
memset(src_b, 0, kMaxWidth);
int count = benchmark_iterations_ * int count = benchmark_iterations_ *
benchmark_width_ * benchmark_height_ / kMaxWidth; (benchmark_width_ * benchmark_height_ + kMaxWidth - 1) / kMaxWidth;
for (int i = 0; i < count; ++i) { for (int i = 0; i < count; ++i) {
h1 = ComputeSumSquareError(src_a, src_b, kMaxWidth); h1 = ComputeSumSquareError(src_a, src_b, kMaxWidth);
} }
MaskCpuFlags(-1); MaskCpuFlags(-1);
EXPECT_EQ(h1, 0); EXPECT_EQ(0, h1);
free_aligned_buffer_16(src_a) free_aligned_buffer_16(src_a)
free_aligned_buffer_16(src_b) free_aligned_buffer_16(src_b)
...@@ -136,6 +115,8 @@ TEST_F(libyuvTest, BenchmarkSumSquareError_OPT) { ...@@ -136,6 +115,8 @@ TEST_F(libyuvTest, BenchmarkSumSquareError_OPT) {
const int kMaxWidth = 4096 * 3; const int kMaxWidth = 4096 * 3;
align_buffer_16(src_a, kMaxWidth) align_buffer_16(src_a, kMaxWidth)
align_buffer_16(src_b, kMaxWidth) align_buffer_16(src_b, kMaxWidth)
memset(src_a, 0, kMaxWidth);
memset(src_b, 0, kMaxWidth);
memcpy(src_a, "test0123test4567", 16); memcpy(src_a, "test0123test4567", 16);
memcpy(src_b, "tick0123tock4567", 16); memcpy(src_b, "tick0123tock4567", 16);
...@@ -146,14 +127,16 @@ TEST_F(libyuvTest, BenchmarkSumSquareError_OPT) { ...@@ -146,14 +127,16 @@ TEST_F(libyuvTest, BenchmarkSumSquareError_OPT) {
src_a[i] = i; src_a[i] = i;
src_b[i] = i; src_b[i] = i;
} }
memset(src_a, 0, kMaxWidth);
memset(src_b, 0, kMaxWidth);
int count = benchmark_iterations_ * int count = benchmark_iterations_ *
benchmark_width_ * benchmark_height_ / kMaxWidth; (benchmark_width_ * benchmark_height_ + kMaxWidth - 1) / kMaxWidth;
for (int i = 0; i < count; ++i) { for (int i = 0; i < count; ++i) {
h1 = ComputeSumSquareError(src_a, src_b, kMaxWidth); h1 = ComputeSumSquareError(src_a, src_b, kMaxWidth);
} }
EXPECT_EQ(h1, 0); EXPECT_EQ(0, h1);
free_aligned_buffer_16(src_a) free_aligned_buffer_16(src_a)
free_aligned_buffer_16(src_b) free_aligned_buffer_16(src_b)
...@@ -163,14 +146,13 @@ TEST_F(libyuvTest, SumSquareError) { ...@@ -163,14 +146,13 @@ TEST_F(libyuvTest, SumSquareError) {
const int kMaxWidth = 4096 * 3; const int kMaxWidth = 4096 * 3;
align_buffer_16(src_a, kMaxWidth) align_buffer_16(src_a, kMaxWidth)
align_buffer_16(src_b, kMaxWidth) align_buffer_16(src_b, kMaxWidth)
memset(src_a, 0, kMaxWidth); memset(src_a, 0, kMaxWidth);
memset(src_b, 0, kMaxWidth); memset(src_b, 0, kMaxWidth);
uint64 err; uint64 err;
err = ComputeSumSquareError(src_a, src_b, kMaxWidth); err = ComputeSumSquareError(src_a, src_b, kMaxWidth);
EXPECT_EQ(err, 0); EXPECT_EQ(0, err);
memset(src_a, 1, kMaxWidth); memset(src_a, 1, kMaxWidth);
err = ComputeSumSquareError(src_a, src_b, kMaxWidth); err = ComputeSumSquareError(src_a, src_b, kMaxWidth);
...@@ -181,7 +163,7 @@ TEST_F(libyuvTest, SumSquareError) { ...@@ -181,7 +163,7 @@ TEST_F(libyuvTest, SumSquareError) {
memset(src_b, 193, kMaxWidth); memset(src_b, 193, kMaxWidth);
err = ComputeSumSquareError(src_a, src_b, kMaxWidth); err = ComputeSumSquareError(src_a, src_b, kMaxWidth);
EXPECT_EQ(err, (kMaxWidth * 3 * 3)); EXPECT_EQ(kMaxWidth * 3 * 3, err);
srandom(time(NULL)); srandom(time(NULL));
...@@ -205,7 +187,6 @@ TEST_F(libyuvTest, SumSquareError) { ...@@ -205,7 +187,6 @@ TEST_F(libyuvTest, SumSquareError) {
TEST_F(libyuvTest, BenchmarkPsnr_C) { TEST_F(libyuvTest, BenchmarkPsnr_C) {
align_buffer_16(src_a, benchmark_width_ * benchmark_height_) align_buffer_16(src_a, benchmark_width_ * benchmark_height_)
align_buffer_16(src_b, benchmark_width_ * benchmark_height_) align_buffer_16(src_b, benchmark_width_ * benchmark_height_)
for (int i = 0; i < benchmark_width_ * benchmark_height_; ++i) { for (int i = 0; i < benchmark_width_ * benchmark_height_; ++i) {
src_a[i] = i; src_a[i] = i;
src_b[i] = i; src_b[i] = i;
...@@ -233,7 +214,6 @@ TEST_F(libyuvTest, BenchmarkPsnr_C) { ...@@ -233,7 +214,6 @@ TEST_F(libyuvTest, BenchmarkPsnr_C) {
TEST_F(libyuvTest, BenchmarkPsnr_OPT) { TEST_F(libyuvTest, BenchmarkPsnr_OPT) {
align_buffer_16(src_a, benchmark_width_ * benchmark_height_) align_buffer_16(src_a, benchmark_width_ * benchmark_height_)
align_buffer_16(src_b, benchmark_width_ * benchmark_height_) align_buffer_16(src_b, benchmark_width_ * benchmark_height_)
for (int i = 0; i < benchmark_width_ * benchmark_height_; ++i) { for (int i = 0; i < benchmark_width_ * benchmark_height_; ++i) {
src_a[i] = i; src_a[i] = i;
src_b[i] = i; src_b[i] = i;
...@@ -264,7 +244,6 @@ TEST_F(libyuvTest, Psnr) { ...@@ -264,7 +244,6 @@ TEST_F(libyuvTest, Psnr) {
const int kSrcStride = 2 * b + kSrcWidth; const int kSrcStride = 2 * b + kSrcWidth;
align_buffer_16(src_a, kSrcPlaneSize) align_buffer_16(src_a, kSrcPlaneSize)
align_buffer_16(src_b, kSrcPlaneSize) align_buffer_16(src_b, kSrcPlaneSize)
memset(src_a, 0, kSrcPlaneSize); memset(src_a, 0, kSrcPlaneSize);
memset(src_b, 0, kSrcPlaneSize); memset(src_b, 0, kSrcPlaneSize);
...@@ -337,7 +316,6 @@ TEST_F(libyuvTest, Psnr) { ...@@ -337,7 +316,6 @@ TEST_F(libyuvTest, Psnr) {
TEST_F(libyuvTest, BenchmarkSsim_C) { TEST_F(libyuvTest, BenchmarkSsim_C) {
align_buffer_16(src_a, benchmark_width_ * benchmark_height_) align_buffer_16(src_a, benchmark_width_ * benchmark_height_)
align_buffer_16(src_b, benchmark_width_ * benchmark_height_) align_buffer_16(src_b, benchmark_width_ * benchmark_height_)
for (int i = 0; i < benchmark_width_ * benchmark_height_; ++i) { for (int i = 0; i < benchmark_width_ * benchmark_height_; ++i) {
src_a[i] = i; src_a[i] = i;
src_b[i] = i; src_b[i] = i;
...@@ -356,7 +334,7 @@ TEST_F(libyuvTest, BenchmarkSsim_C) { ...@@ -356,7 +334,7 @@ TEST_F(libyuvTest, BenchmarkSsim_C) {
MaskCpuFlags(-1); MaskCpuFlags(-1);
EXPECT_EQ(0, 0); EXPECT_EQ(0, 0); // Pass if we get this far.
free_aligned_buffer_16(src_a) free_aligned_buffer_16(src_a)
free_aligned_buffer_16(src_b) free_aligned_buffer_16(src_b)
...@@ -365,7 +343,6 @@ TEST_F(libyuvTest, BenchmarkSsim_C) { ...@@ -365,7 +343,6 @@ TEST_F(libyuvTest, BenchmarkSsim_C) {
TEST_F(libyuvTest, BenchmarkSsim_OPT) { TEST_F(libyuvTest, BenchmarkSsim_OPT) {
align_buffer_16(src_a, benchmark_width_ * benchmark_height_) align_buffer_16(src_a, benchmark_width_ * benchmark_height_)
align_buffer_16(src_b, benchmark_width_ * benchmark_height_) align_buffer_16(src_b, benchmark_width_ * benchmark_height_)
for (int i = 0; i < benchmark_width_ * benchmark_height_; ++i) { for (int i = 0; i < benchmark_width_ * benchmark_height_; ++i) {
src_a[i] = i; src_a[i] = i;
src_b[i] = i; src_b[i] = i;
...@@ -380,9 +357,9 @@ TEST_F(libyuvTest, BenchmarkSsim_OPT) { ...@@ -380,9 +357,9 @@ TEST_F(libyuvTest, BenchmarkSsim_OPT) {
benchmark_width_, benchmark_height_); benchmark_width_, benchmark_height_);
opt_time = (get_time() - opt_time) / benchmark_iterations_; opt_time = (get_time() - opt_time) / benchmark_iterations_;
printf("BenchmarkPsnr_OPT - %8.2f us opt\n", opt_time * 1e6); printf("BenchmarkSsim_OPT - %8.2f us opt\n", opt_time * 1e6);
EXPECT_EQ(0, 0); EXPECT_EQ(0, 0); // Pass if we get this far.
free_aligned_buffer_16(src_a) free_aligned_buffer_16(src_a)
free_aligned_buffer_16(src_b) free_aligned_buffer_16(src_b)
...@@ -396,7 +373,6 @@ TEST_F(libyuvTest, Ssim) { ...@@ -396,7 +373,6 @@ TEST_F(libyuvTest, Ssim) {
const int kSrcStride = 2 * b + kSrcWidth; const int kSrcStride = 2 * b + kSrcWidth;
align_buffer_16(src_a, kSrcPlaneSize) align_buffer_16(src_a, kSrcPlaneSize)
align_buffer_16(src_b, kSrcPlaneSize) align_buffer_16(src_b, kSrcPlaneSize)
memset(src_a, 0, kSrcPlaneSize); memset(src_a, 0, kSrcPlaneSize);
memset(src_b, 0, kSrcPlaneSize); memset(src_b, 0, kSrcPlaneSize);
...@@ -421,7 +397,7 @@ TEST_F(libyuvTest, Ssim) { ...@@ -421,7 +397,7 @@ TEST_F(libyuvTest, Ssim) {
src_b + kSrcStride * b + b, kSrcStride, src_b + kSrcStride * b + b, kSrcStride,
kSrcWidth, kSrcHeight); kSrcWidth, kSrcHeight);
EXPECT_GT(err, 0.8); EXPECT_GT(err, 0.0001);
EXPECT_LT(err, 0.9); EXPECT_LT(err, 0.9);
for (int i = 0; i < kSrcPlaneSize; ++i) { for (int i = 0; i < kSrcPlaneSize; ++i) {
...@@ -432,7 +408,7 @@ TEST_F(libyuvTest, Ssim) { ...@@ -432,7 +408,7 @@ TEST_F(libyuvTest, Ssim) {
src_b + kSrcStride * b + b, kSrcStride, src_b + kSrcStride * b + b, kSrcStride,
kSrcWidth, kSrcHeight); kSrcWidth, kSrcHeight);
EXPECT_GT(err, 0.008); EXPECT_GT(err, 0.0);
EXPECT_LT(err, 0.009); EXPECT_LT(err, 0.009);
srandom(time(NULL)); srandom(time(NULL));
......
...@@ -29,9 +29,8 @@ void PrintArray(uint8 *array, int w, int h) { ...@@ -29,9 +29,8 @@ void PrintArray(uint8 *array, int w, int h) {
TEST_F(libyuvTest, Transpose) { TEST_F(libyuvTest, Transpose) {
int iw, ih, ow, oh; int iw, ih, ow, oh;
int err = 0; int err = 0;
iw = benchmark_width_;
for (iw = 8; iw < rotate_max_w_ && !err; ++iw) { ih = benchmark_height_;
for (ih = 8; ih < rotate_max_h_ && !err; ++ih) {
int i; int i;
ow = ih; ow = ih;
oh = iw; oh = iw;
...@@ -67,8 +66,6 @@ TEST_F(libyuvTest, Transpose) { ...@@ -67,8 +66,6 @@ TEST_F(libyuvTest, Transpose) {
free_aligned_buffer_16(input) free_aligned_buffer_16(input)
free_aligned_buffer_16(output_1) free_aligned_buffer_16(output_1)
free_aligned_buffer_16(output_2) free_aligned_buffer_16(output_2)
}
}
EXPECT_EQ(0, err); EXPECT_EQ(0, err);
} }
...@@ -76,9 +73,8 @@ TEST_F(libyuvTest, Transpose) { ...@@ -76,9 +73,8 @@ TEST_F(libyuvTest, Transpose) {
TEST_F(libyuvTest, TransposeUV) { TEST_F(libyuvTest, TransposeUV) {
int iw, ih, ow, oh; int iw, ih, ow, oh;
int err = 0; int err = 0;
iw = benchmark_width_;
for (iw = 16; iw < rotate_max_w_ && !err; iw += 2) { ih = benchmark_height_;
for (ih = 8; ih < rotate_max_h_ && !err; ++ih) {
int i; int i;
ow = ih; ow = ih;
...@@ -127,8 +123,6 @@ TEST_F(libyuvTest, TransposeUV) { ...@@ -127,8 +123,6 @@ TEST_F(libyuvTest, TransposeUV) {
free_aligned_buffer_16(output_b1) free_aligned_buffer_16(output_b1)
free_aligned_buffer_16(output_a2) free_aligned_buffer_16(output_a2)
free_aligned_buffer_16(output_b2) free_aligned_buffer_16(output_b2)
}
}
EXPECT_EQ(0, err); EXPECT_EQ(0, err);
} }
...@@ -136,9 +130,8 @@ TEST_F(libyuvTest, TransposeUV) { ...@@ -136,9 +130,8 @@ TEST_F(libyuvTest, TransposeUV) {
TEST_F(libyuvTest, RotatePlane90) { TEST_F(libyuvTest, RotatePlane90) {
int iw, ih, ow, oh; int iw, ih, ow, oh;
int err = 0; int err = 0;
iw = benchmark_width_;
for (iw = 8; iw < rotate_max_w_ && !err; ++iw) { ih = benchmark_height_;
for (ih = 8; ih < rotate_max_h_ && !err; ++ih) {
int i; int i;
ow = ih; ow = ih;
...@@ -187,8 +180,6 @@ TEST_F(libyuvTest, RotatePlane90) { ...@@ -187,8 +180,6 @@ TEST_F(libyuvTest, RotatePlane90) {
free_aligned_buffer_16(output_90) free_aligned_buffer_16(output_90)
free_aligned_buffer_16(output_180) free_aligned_buffer_16(output_180)
free_aligned_buffer_16(output_270) free_aligned_buffer_16(output_270)
}
}
EXPECT_EQ(0, err); EXPECT_EQ(0, err);
} }
...@@ -196,9 +187,8 @@ TEST_F(libyuvTest, RotatePlane90) { ...@@ -196,9 +187,8 @@ TEST_F(libyuvTest, RotatePlane90) {
TEST_F(libyuvTest, RotateUV90) { TEST_F(libyuvTest, RotateUV90) {
int iw, ih, ow, oh; int iw, ih, ow, oh;
int err = 0; int err = 0;
iw = benchmark_width_;
for (iw = 16; iw < rotate_max_w_ && !err; iw += 2) { ih = benchmark_height_;
for (ih = 8; ih < rotate_max_h_ && !err; ++ih) {
int i; int i;
ow = ih; ow = ih;
...@@ -264,8 +254,6 @@ TEST_F(libyuvTest, RotateUV90) { ...@@ -264,8 +254,6 @@ TEST_F(libyuvTest, RotateUV90) {
free_aligned_buffer_16(output_90_v) free_aligned_buffer_16(output_90_v)
free_aligned_buffer_16(output_180_u) free_aligned_buffer_16(output_180_u)
free_aligned_buffer_16(output_180_v) free_aligned_buffer_16(output_180_v)
}
}
EXPECT_EQ(0, err); EXPECT_EQ(0, err);
} }
...@@ -273,9 +261,8 @@ TEST_F(libyuvTest, RotateUV90) { ...@@ -273,9 +261,8 @@ TEST_F(libyuvTest, RotateUV90) {
TEST_F(libyuvTest, RotateUV180) { TEST_F(libyuvTest, RotateUV180) {
int iw, ih, ow, oh; int iw, ih, ow, oh;
int err = 0; int err = 0;
iw = benchmark_width_;
for (iw = 16; iw < rotate_max_w_ && !err; iw += 2) { ih = benchmark_height_;
for (ih = 8; ih < rotate_max_h_ && !err; ++ih) {
int i; int i;
ow = iw >> 1; ow = iw >> 1;
...@@ -341,8 +328,6 @@ TEST_F(libyuvTest, RotateUV180) { ...@@ -341,8 +328,6 @@ TEST_F(libyuvTest, RotateUV180) {
free_aligned_buffer_16(output_90_v) free_aligned_buffer_16(output_90_v)
free_aligned_buffer_16(output_180_u) free_aligned_buffer_16(output_180_u)
free_aligned_buffer_16(output_180_v) free_aligned_buffer_16(output_180_v)
}
}
EXPECT_EQ(0, err); EXPECT_EQ(0, err);
} }
...@@ -350,9 +335,8 @@ TEST_F(libyuvTest, RotateUV180) { ...@@ -350,9 +335,8 @@ TEST_F(libyuvTest, RotateUV180) {
TEST_F(libyuvTest, RotateUV270) { TEST_F(libyuvTest, RotateUV270) {
int iw, ih, ow, oh; int iw, ih, ow, oh;
int err = 0; int err = 0;
iw = benchmark_width_;
for (iw = 16; iw < rotate_max_w_ && !err; iw += 2) { ih = benchmark_height_;
for (ih = 8; ih < rotate_max_h_ && !err; ++ih) {
int i; int i;
ow = ih; ow = ih;
...@@ -419,8 +403,6 @@ TEST_F(libyuvTest, RotateUV270) { ...@@ -419,8 +403,6 @@ TEST_F(libyuvTest, RotateUV270) {
free_aligned_buffer_16(output_270_v) free_aligned_buffer_16(output_270_v)
free_aligned_buffer_16(output_180_u) free_aligned_buffer_16(output_180_u)
free_aligned_buffer_16(output_180_v) free_aligned_buffer_16(output_180_v)
}
}
EXPECT_EQ(0, err); EXPECT_EQ(0, err);
} }
...@@ -428,9 +410,8 @@ TEST_F(libyuvTest, RotateUV270) { ...@@ -428,9 +410,8 @@ TEST_F(libyuvTest, RotateUV270) {
TEST_F(libyuvTest, RotatePlane180) { TEST_F(libyuvTest, RotatePlane180) {
int iw, ih, ow, oh; int iw, ih, ow, oh;
int err = 0; int err = 0;
iw = benchmark_width_;
for (iw = 8; iw < rotate_max_w_ && !err; ++iw) ih = benchmark_height_;
for (ih = 8; ih < rotate_max_h_ && !err; ++ih) {
int i; int i;
ow = iw; ow = iw;
...@@ -467,7 +448,6 @@ TEST_F(libyuvTest, RotatePlane180) { ...@@ -467,7 +448,6 @@ TEST_F(libyuvTest, RotatePlane180) {
free_aligned_buffer_16(input) free_aligned_buffer_16(input)
free_aligned_buffer_16(output_0) free_aligned_buffer_16(output_0)
free_aligned_buffer_16(output_180) free_aligned_buffer_16(output_180)
}
EXPECT_EQ(0, err); EXPECT_EQ(0, err);
} }
...@@ -475,9 +455,8 @@ TEST_F(libyuvTest, RotatePlane180) { ...@@ -475,9 +455,8 @@ TEST_F(libyuvTest, RotatePlane180) {
TEST_F(libyuvTest, RotatePlane270) { TEST_F(libyuvTest, RotatePlane270) {
int iw, ih, ow, oh; int iw, ih, ow, oh;
int err = 0; int err = 0;
iw = benchmark_width_;
for (iw = 8; iw < rotate_max_w_ && !err; ++iw) { ih = benchmark_height_;
for (ih = 8; ih < rotate_max_h_ && !err; ++ih) {
int i; int i;
ow = ih; ow = ih;
...@@ -525,8 +504,6 @@ TEST_F(libyuvTest, RotatePlane270) { ...@@ -525,8 +504,6 @@ TEST_F(libyuvTest, RotatePlane270) {
free_aligned_buffer_16(output_90) free_aligned_buffer_16(output_90)
free_aligned_buffer_16(output_180) free_aligned_buffer_16(output_180)
free_aligned_buffer_16(output_270) free_aligned_buffer_16(output_270)
}
}
EXPECT_EQ(0, err); EXPECT_EQ(0, err);
} }
...@@ -534,9 +511,8 @@ TEST_F(libyuvTest, RotatePlane270) { ...@@ -534,9 +511,8 @@ TEST_F(libyuvTest, RotatePlane270) {
TEST_F(libyuvTest, RotatePlane90and270) { TEST_F(libyuvTest, RotatePlane90and270) {
int iw, ih, ow, oh; int iw, ih, ow, oh;
int err = 0; int err = 0;
iw = benchmark_width_;
for (iw = 16; iw < rotate_max_w_ && !err; iw += 4) ih = benchmark_height_;
for (ih = 16; ih < rotate_max_h_ && !err; ih += 4) {
int i; int i;
ow = ih; ow = ih;
...@@ -573,7 +549,6 @@ TEST_F(libyuvTest, RotatePlane90and270) { ...@@ -573,7 +549,6 @@ TEST_F(libyuvTest, RotatePlane90and270) {
free_aligned_buffer_16(input) free_aligned_buffer_16(input)
free_aligned_buffer_16(output_0) free_aligned_buffer_16(output_0)
free_aligned_buffer_16(output_90) free_aligned_buffer_16(output_90)
}
EXPECT_EQ(0, err); EXPECT_EQ(0, err);
} }
...@@ -581,9 +556,8 @@ TEST_F(libyuvTest, RotatePlane90and270) { ...@@ -581,9 +556,8 @@ TEST_F(libyuvTest, RotatePlane90and270) {
TEST_F(libyuvTest, RotatePlane90Pitch) { TEST_F(libyuvTest, RotatePlane90Pitch) {
int iw, ih; int iw, ih;
int err = 0; int err = 0;
iw = benchmark_width_;
for (iw = 16; iw < rotate_max_w_ && !err; iw += 4) ih = benchmark_height_;
for (ih = 16; ih < rotate_max_h_ && !err; ih += 4) {
int i; int i;
int ow = ih; int ow = ih;
...@@ -632,7 +606,6 @@ TEST_F(libyuvTest, RotatePlane90Pitch) { ...@@ -632,7 +606,6 @@ TEST_F(libyuvTest, RotatePlane90Pitch) {
free_aligned_buffer_16(input) free_aligned_buffer_16(input)
free_aligned_buffer_16(output_0) free_aligned_buffer_16(output_0)
free_aligned_buffer_16(output_90) free_aligned_buffer_16(output_90)
}
EXPECT_EQ(0, err); EXPECT_EQ(0, err);
} }
...@@ -640,9 +613,8 @@ TEST_F(libyuvTest, RotatePlane90Pitch) { ...@@ -640,9 +613,8 @@ TEST_F(libyuvTest, RotatePlane90Pitch) {
TEST_F(libyuvTest, RotatePlane270Pitch) { TEST_F(libyuvTest, RotatePlane270Pitch) {
int iw, ih, ow, oh; int iw, ih, ow, oh;
int err = 0; int err = 0;
iw = benchmark_width_;
for (iw = 16; iw < rotate_max_w_ && !err; iw += 4) { ih = benchmark_height_;
for (ih = 16; ih < rotate_max_h_ && !err; ih += 4) {
int i; int i;
ow = ih; ow = ih;
...@@ -691,8 +663,6 @@ TEST_F(libyuvTest, RotatePlane270Pitch) { ...@@ -691,8 +663,6 @@ TEST_F(libyuvTest, RotatePlane270Pitch) {
free_aligned_buffer_16(input) free_aligned_buffer_16(input)
free_aligned_buffer_16(output_0) free_aligned_buffer_16(output_0)
free_aligned_buffer_16(output_270) free_aligned_buffer_16(output_270)
}
}
EXPECT_EQ(0, err); EXPECT_EQ(0, err);
} }
......
...@@ -19,11 +19,17 @@ ...@@ -19,11 +19,17 @@
#define BENCHMARK_ITERATIONS 1 #define BENCHMARK_ITERATIONS 1
libyuvTest::libyuvTest() : rotate_max_w_(128), rotate_max_h_(128), libyuvTest::libyuvTest() : rotate_max_w_(128), rotate_max_h_(128),
benchmark_iterations_(BENCHMARK_ITERATIONS), benchmark_width_(1280), benchmark_iterations_(BENCHMARK_ITERATIONS), benchmark_width_(128),
benchmark_height_(720) { benchmark_height_(72) {
const char* repeat = getenv("LIBYUV_REPEAT"); const char* repeat = getenv("LIBYUV_REPEAT");
if (repeat) { if (repeat) {
benchmark_iterations_ = atoi(repeat); // NOLINT benchmark_iterations_ = atoi(repeat); // NOLINT
// For quicker unittests, default is 128 x 72. But when benchmarking,
// default to 720p. Allow size to specify.
if (benchmark_iterations_ > 1) {
benchmark_width_ = 1280;
benchmark_height_ = 720;
}
} }
const char* width = getenv("LIBYUV_WIDTH"); const char* width = getenv("LIBYUV_WIDTH");
if (width) { if (width) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment