• Frank Barchard's avatar
    Replace random with fastrand · 16f12b58
    Frank Barchard authored
    random / rand is slow and impacts performance testing.
    Although its only called to clear a frame once, a typical profile shows
    it high in the overall profile, when doing 1000 frames for a benchmark.
    
    95.10%  libyuv_unittest  libyuv_unittest      [.] YUY2ToARGBRow_SSSE3
     2.01%  libyuv_unittest  libc-2.19.so         [.] __random_r
     1.13%  libyuv_unittest  libc-2.19.so         [.] __random
    
    Replace random is a faster version for unittests.
    
    set LIBYUV_WIDTH=1280
    set LIBYUV_HEIGHT=720
    set LIBYUV_REPEAT=999
    set LIBYUV_FLAGS=-1
    out\release\libyuv_unittest --gtest_filter=*YUY2ToARGB*  | findms
    
    Was
    libyuvTest.YUY2ToARGB_Opt (497 ms)
    
    Now
    libyuvTest.YUY2ToARGB_Opt (454 ms)
    
    R=harryjin@google.com
    BUG=none
    
    Review URL: https://codereview.chromium.org/1361813002 .
    16f12b58
Name
Last commit
Last update
chromium Loading commit data...
include Loading commit data...
source Loading commit data...
tools/valgrind-libyuv Loading commit data...
unit_test Loading commit data...
util Loading commit data...
.gitignore Loading commit data...
AUTHORS Loading commit data...
Android.mk Loading commit data...
BUILD.gn Loading commit data...
CMakeLists.txt Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE_THIRD_PARTY Loading commit data...
OWNERS Loading commit data...
PATENTS Loading commit data...
PRESUBMIT.py Loading commit data...
README.chromium Loading commit data...
all.gyp Loading commit data...
codereview.settings Loading commit data...
download_vs_toolchain.py Loading commit data...
drover.properties Loading commit data...
gyp_libyuv Loading commit data...
gyp_libyuv.py Loading commit data...
libyuv.gyp Loading commit data...
libyuv.gypi Loading commit data...
libyuv_nacl.gyp Loading commit data...
libyuv_test.gyp Loading commit data...
linux.mk Loading commit data...
public.mk Loading commit data...
setup_links.py Loading commit data...
sync_chromium.py Loading commit data...
winarm.mk Loading commit data...