1. 07 Feb, 2018 1 commit
  2. 24 Jan, 2018 1 commit
  3. 23 Jan, 2018 1 commit
  4. 08 Nov, 2017 1 commit
    • Frank Barchard's avatar
      Remove DISABLE_CLANG_MSA · 68f852d8
      Frank Barchard authored
      cleanup to remove ifdefs around functions affected by
      a clang bug.
      
      gn gen out/Release "--args=is_debug=false target_os=\"android\" target_cpu=\"mips64el\" mips_arch_variant=\"r6\" mips_use_msa=true is_component_build=true is_clang=true"
      ninja -v -C out/Release libyuv_unittest
      
      Bug: libyuv:634
      Test: build for mips with clang
      Change-Id: I278b368dbb2fe89082240e280267d0a27a214c78
      Reviewed-on: https://chromium-review.googlesource.com/757980Reviewed-by: 's avatarFrank Barchard <fbarchard@google.com>
      Commit-Queue: Frank Barchard <fbarchard@google.com>
      68f852d8
  5. 29 Aug, 2017 1 commit
  6. 17 Aug, 2017 1 commit
  7. 14 Aug, 2017 1 commit
  8. 03 Aug, 2017 1 commit
  9. 23 Feb, 2017 1 commit
    • Manojkumar Bhosale's avatar
      Add MSA optimized Interpolate/MergeUV/Misc functions · 45b176d1
      Manojkumar Bhosale authored
      BUG=libyuv:634
      
      Change-Id: If8d60bd57f01fe95bc2fd26196466574195cc126
      
      Performance Gain (vs C auto-vectorized)
      InterpolateRow_MSA      - ~3.3x
      InterpolateRow_Any_MSA  - ~2.5x
      ARGBSetRow_MSA          - ~1.0x
      ARGBSetRow_Any_MSA      - ~1.0x
      ARGBToRGB24Row_MSA      - ~1.9x
      ARGBToRGB24Row_Any_MSA  - ~1.6x
      MergeUVRow_MSA          - ~1.6x
      MergeUVRow_Any_MSA      - ~1.2x
      
      Performance Gain (vs C non-vectorized)
      InterpolateRow_MSA      - ~11.3x
      InterpolateRow_Any_MSA  - ~ 7.9x
      ARGBSetRow_MSA          - ~ 6.2x
      ARGBSetRow_Any_MSA      - ~ 4.0x
      ARGBToRGB24Row_MSA      - ~ 9.9x
      ARGBToRGB24Row_Any_MSA  - ~ 8.4x
      MergeUVRow_MSA          - ~12.7x
      MergeUVRow_Any_MSA      - ~ 8.0x
      
      Change-Id: If8d60bd57f01fe95bc2fd26196466574195cc126
      Reviewed-on: https://chromium-review.googlesource.com/445817Reviewed-by: 's avatarFrank Barchard <fbarchard@google.com>
      Commit-Queue: Frank Barchard <fbarchard@google.com>
      45b176d1
  10. 21 Feb, 2017 1 commit
    • Manojkumar Bhosale's avatar
      Add MSA optimized I444/I400/J400/YUY2/UYVY to ARGB row functions · eed66b20
      Manojkumar Bhosale authored
      BUG=libyuv:634
      
      Change-Id: Ida80027c36a938a3bcf6f4480626f8eb9495e1be
      
      Performance Gain (vs C auto-vectorized)
      I444ToARGBRow_MSA       - ~1.6x
      I444ToARGBRow_Any_MSA   - ~1.6x
      I400ToARGBRow_MSA       - ~5.5x
      I400ToARGBRow_Any_MSA   - ~5.3x
      J400ToARGBRow_MSA       - ~1.0x
      J400ToARGBRow_Any_MSA   - ~1.0x
      YUY2ToARGBRow_MSA       - ~1.6x
      YUY2ToARGBRow_Any_MSA   - ~1.6x
      UYVYToARGBRow_MSA       - ~1.6x
      UYVYToARGBRow_Any_MSA   - ~1.6x
      
      Performance Gain (vs C non-vectorized)
      I444ToARGBRow_MSA       - ~7.3x
      I444ToARGBRow_Any_MSA   - ~7.1x
      I400ToARGBRow_MSA       - ~5.5x
      I400ToARGBRow_Any_MSA   - ~5.2x
      J400ToARGBRow_MSA       - ~6.8x
      J400ToARGBRow_Any_MSA   - ~5.7x
      YUY2ToARGBRow_MSA       - ~7.2x
      YUY2ToARGBRow_Any_MSA   - ~7.0x
      UYVYToARGBRow_MSA       - ~7.1x
      UYVYToARGBRow_Any_MSA   - ~6.9x
      
      Change-Id: Ida80027c36a938a3bcf6f4480626f8eb9495e1be
      Reviewed-on: https://chromium-review.googlesource.com/439246Reviewed-by: 's avatarFrank Barchard <fbarchard@google.com>
      Commit-Queue: Frank Barchard <fbarchard@google.com>
      eed66b20
  11. 07 Feb, 2017 1 commit
  12. 01 Feb, 2017 1 commit
    • Manojkumar Bhosale's avatar
      Add MSA optimized ARGB/ABGR/BGRA/RGBA To Y/UV row functions · 54ce8f23
      Manojkumar Bhosale authored
      R=fbarchard@google.com
      BUG=libyuv:634
      
      Performance Gain (vs C auto-vectorized)
      ARGBToYJRow_MSA       - ~3.2x
      ARGBToYJRow_Any_MSA   - ~2.7x
      BGRAToYRow_MSA        - ~3.2x
      BGRAToYRow_Any_MSA    - ~2.7x
      ABGRToYRow_MSA        - ~3.2x
      ABGRToYRow_Any_MSA    - ~2.6x
      RGBAToYRow_MSA        - ~3.1x
      RGBAToYRow_Any_MSA    - ~2.7x
      ARGBToUVJRow_MSA      - ~5.5x
      ARGBToUVJRow_Any_MSA  - ~4.5x
      BGRAToUVRow_MSA       - ~2.1x
      BGRAToUVRow_Any_MSA   - ~2.0x
      ABGRToUVRow_MSA       - ~2.1x
      ABGRToUVRow_Any_MSA   - ~1.9x
      RGBAToUVRow_MSA       - ~2.2x
      RGBAToUVRow_Any_MSA   - ~1.9x
      
      Performance Gain (vs C non-vectorized)
      ARGBToYJRow_MSA       - ~10.9x
      ARGBToYJRow_Any_MSA   -  ~9.2x
      BGRAToYRow_MSA        - ~10.9x
      BGRAToYRow_Any_MSA    -  ~9.3x
      ABGRToYRow_MSA        - ~11.0x
      ABGRToYRow_Any_MSA    -  ~9.3x
      RGBAToYRow_MSA        - ~10.9x
      RGBAToYRow_Any_MSA    -  ~9.1x
      ARGBToUVJRow_MSA      - ~12.4x
      ARGBToUVJRow_Any_MSA  - ~10.5x
      BGRAToUVRow_MSA       -  ~4.7x
      BGRAToUVRow_Any_MSA   -  ~4.4x
      ABGRToUVRow_MSA       -  ~4.7x
      ABGRToUVRow_Any_MSA   -  ~4.5x
      RGBAToUVRow_MSA       -  ~4.8x
      RGBAToUVRow_Any_MSA   -  ~4.4x
      
      Review-Url: https://codereview.chromium.org/2641153003 .
      54ce8f23
  13. 18 Jan, 2017 1 commit
    • Manojkumar Bhosale's avatar
      Add MSA optimized NV12/21 To RGB row functions · 09b8c971
      Manojkumar Bhosale authored
      R=fbarchard@google.com
      BUG=libyuv:634
      
      Performance Gain (vs C auto-vectorized)
      NV12ToARGBRow_MSA       - ~1.5x
      NV12ToARGBRow_Any_MSA   - ~1.4x
      NV12ToRGB565Row_MSA     - ~1.4x
      NV12ToRGB565Row_Any_MSA - ~1.4x
      NV21ToARGBRow_MSA       - ~1.5x
      NV21ToARGBRow_Any_MSA   - ~1.5x
      SobelRow_MSA            - ~4.3x
      SobelRow_Any_MSA        - ~3.4x
      SobelToPlaneRow_MSA     - ~8.0x
      SobelToPlaneRow_Any_MSA - ~4.7x
      SobelXYRow_MSA          - ~3.0x
      SobelXYRow_Any_MSA      - ~2.5x
      
      Performance Gain (vs C non-vectorized)
      NV12ToARGBRow_MSA       - ~6.5x
      NV12ToARGBRow_Any_MSA   - ~6.5x
      NV12ToRGB565Row_MSA     - ~6.2x
      NV12ToRGB565Row_Any_MSA - ~6.1x
      NV21ToARGBRow_MSA       - ~6.5x
      NV21ToARGBRow_Any_MSA   - ~6.5x
      SobelRow_MSA            - ~14.5x
      SobelRow_Any_MSA        - ~11.3x
      SobelToPlaneRow_MSA     - ~34.2x
      SobelToPlaneRow_Any_MSA - ~19.4x
      SobelXYRow_MSA          - ~11.1x
      SobelXYRow_Any_MSA      - ~9.1x
      
      Review-Url: https://codereview.chromium.org/2636483002 .
      09b8c971
  14. 13 Jan, 2017 1 commit
    • Manojkumar Bhosale's avatar
      Add MSA optimized RAW/RGB/ARGB to ARGB/Y/UV row functions · 7c64163f
      Manojkumar Bhosale authored
      R=fbarchard@google.com
      BUG=libyuv:634
      
      Performance Gain (vs C vectorized)
      ARGB1555ToARGBRow_MSA     - 1.85
      ARGB1555ToARGBRow_Any_MSA - 1.82
      RGB565ToARGBRow_MSA       - 2.14
      RGB565ToARGBRow_Any_MSA   - 2.08
      RGB24ToARGBRow_MSA        - 8.57
      RGB24ToARGBRow_Any_MSA    - 7.42
      RAWToARGBRow_MSA          - 8.57
      RAWToARGBRow_Any_MSA      - 7.42
      ARGB1555ToYRow_MSA        - 2.60
      ARGB1555ToYRow_Any_MSA    - 2.47
      RGB565ToYRow_MSA          - 2.45
      RGB565ToYRow_Any_MSA      - 2.33
      RGB24ToYRow_MSA           - 2.23
      RGB24ToYRow_Any_MSA       - 2.01
      RAWToYRow_MSA             - 2.25
      RAWToYRow_Any_MSA         - 2.02
      ARGB1555ToUVRow_MSA       - 1.40
      ARGB1555ToUVRow_Any_MSA   - 1.37
      RGB565ToUVRow_MSA         - 1.68
      RGB565ToUVRow_Any_MSA     - 1.63
      RGB24ToUVRow_MSA          - 3.02
      RGB24ToUVRow_Any_MSA      - 2.87
      RAWToUVRow_MSA            - 3.04
      RAWToUVRow_Any_MSA        - 2.85
      
      Performance Gain (vs C non-vectorized)
      ARGB1555ToARGBRow_MSA     - 4.66
      ARGB1555ToARGBRow_Any_MSA - 4.45
      RGB565ToARGBRow_MSA       - 5.58
      RGB565ToARGBRow_Any_MSA   - 5.34
      RGB24ToARGBRow_MSA        - 8.57
      RGB24ToARGBRow_Any_MSA    - 7.42
      RAWToARGBRow_MSA          - 8.57
      RAWToARGBRow_Any_MSA      - 7.42
      ARGB1555ToYRow_MSA        - 6.38
      ARGB1555ToYRow_Any_MSA    - 5.98
      RGB565ToYRow_MSA          - 6.42
      RGB565ToYRow_Any_MSA      - 6.05
      RGB24ToYRow_MSA           - 7.87
      RGB24ToYRow_Any_MSA       - 7.01
      RAWToYRow_MSA             - 7.98
      RAWToYRow_Any_MSA         - 7.01
      ARGB1555ToUVRow_MSA       - 5.39
      ARGB1555ToUVRow_Any_MSA   - 5.06
      RGB565ToUVRow_MSA         - 6.39
      RGB565ToUVRow_Any_MSA     - 5.90
      RGB24ToUVRow_MSA          - 3.04
      RGB24ToUVRow_Any_MSA      - 2.87
      RAWToUVRow_MSA            - 3.04
      RAWToUVRow_Any_MSA        - 2.88
      
      Review-Url: https://codereview.chromium.org/2600713002 .
      7c64163f
  15. 15 Dec, 2016 1 commit
    • Manojkumar Bhosale's avatar
      Add MSA optimized ARGB Attenuate/RGB565/Shuffle/Shader/Gray/Sepia row functions · a899dea2
      Manojkumar Bhosale authored
      R=fbarchard@google.com
      BUG=libyuv:634
      
      Performance Gain (vs C vectorized)
      ARGBAttenuateRow_MSA          - ~1.1x
      ARGBAttenuateRow_Any_MSA      - ~1.1x
      ARGBToRGB565DitherRow_MSA     - ~6.4x
      ARGBToRGB565DitherRow_Any_MSA - ~6.2x
      ARGBShuffleRow_MSA            - ~5.1x
      ARGBShuffleRow_Any_MSA        - ~1.9x
      ARGBShadeRow_MSA              - ~1.1x
      ARGBGrayRow_MSA               - ~2.6x
      ARGBSepiaRow_MSA              - ~11.6x
      
      Performance Gain (vs C non-vectorized)
      ARGBAttenuateRow_MSA          - ~2.46x
      ARGBAttenuateRow_Any_MSA      - ~2.45x
      ARGBToRGB565DitherRow_MSA     - ~9.4x
      ARGBToRGB565DitherRow_Any_MSA - ~12.5x
      ARGBShuffleRow_MSA            - ~5.2x
      ARGBShuffleRow_Any_MSA        - ~1.9x
      ARGBShadeRow_MSA              - ~4.3x
      ARGBGrayRow_MSA               - ~10.5x
      ARGBSepiaRow_MSA              - ~12.2x
      
      Review-Url: https://codereview.chromium.org/2559693002 .
      a899dea2
  16. 02 Dec, 2016 1 commit
    • Manojkumar Bhosale's avatar
      Add MSA optimized ARGB Multiply/Add/Subtract row functions · 83f460be
      Manojkumar Bhosale authored
      R=fbarchard@google.com
      BUG=libyuv:634
      
      Performance Gain (vs C vectorized)
      ARGBMultiplyRow_MSA       - 1.4x
      ARGBAddRow_MSA            - 8.6x
      ARGBSubtractRow_MSA       - 8.6x
      
      ARGBMultiplyRow_Any_MSA   - 1.35x
      ARGBAddRow_Any_MSA        - 7.3x
      ARGBSubtractRow_Any_MSA   - 7.2x
      
      Performance Gain (vs C non-vectorized)
      ARGBMultiplyRow_MSA       - 4.4x
      ARGBAddRow_MSA            - 27x
      ARGBSubtractRow_MSA       - 22x
      
      ARGBMultiplyRow_Any_MSA   - 3.5x
      ARGBAddRow_Any_MSA        - 23x
      ARGBSubtractRow_Any_MSA   - 18x
      
      Review URL: https://codereview.chromium.org/2529983002 .
      83f460be
  17. 22 Nov, 2016 1 commit
    • Frank Barchard's avatar
      Add MSA optimized ARGBToRGB565Row_MSA, ARGBToARGB1555Row_MSA,… · da0c29da
      Frank Barchard authored
      Add MSA optimized ARGBToRGB565Row_MSA, ARGBToARGB1555Row_MSA, ARGBToARGB4444Row_MSA, ARGBToUV444Row_MSA functions
      
      R=fbarchard@google.com
      BUG=libyuv:634
      
      Performance Gain (vs C vectorized)
      ARGBToRGB565Row_MSA       - ~1.6x
      ARGBToRGB565Row_Any_MSA   - ~1.6x
      ARGBToARGB1555Row_MSA     - ~1.3x
      ARGBToARGB1555Row_Any_MSA - ~1.3x
      ARGBToARGB4444Row_MSA     - ~3.8x
      ARGBToARGB4444Row_Any_MSA - ~3.8x
      ARGBToUV444Row_MSA        - ~2.4x
      ARGBToUV444Row_Any_MSA    - ~2.4x
      
      Performance Gain (vs C non-vectorized)
      ARGBToRGB565Row_MSA       - ~2.8x
      ARGBToRGB565Row_Any_MSA   - ~2.8x
      ARGBToARGB1555Row_MSA     - ~2.2x
      ARGBToARGB1555Row_Any_MSA - ~2.2x
      ARGBToARGB4444Row_MSA     - ~6.8x
      ARGBToARGB4444Row_Any_MSA - ~6.6x
      ARGBToUV444Row_MSA        - ~6.7x
      ARGBToUV444Row_Any_MSA    - ~6.7x
      
      Review URL: https://codereview.chromium.org/2520003004 .
      da0c29da
  18. 18 Nov, 2016 1 commit
  19. 08 Nov, 2016 1 commit
  20. 27 Oct, 2016 1 commit
  21. 26 Oct, 2016 1 commit
  22. 25 Oct, 2016 1 commit
  23. 24 Oct, 2016 1 commit
    • Frank Barchard's avatar
      Add MSA optimized I422ToARGBRow_MSA and I422ToRGBARow_MSA functions · f5d5bd88
      Frank Barchard authored
      R=fbarchard@google.com
      BUG=libyuv:634
      
      Performance Gains :- (vs C vectorized)
      
      I422ToARGBRow_MSA     : ~1.6x
      I422ToRGBARow_MSA     : ~1.6x
      
      I422ToARGBRow_Any_MSA : ~1.58x
      I422ToRGBARow_Any_MSA : ~1.6x
      
      Performance Gains :- (vs C non-vectorized)
      
      I422ToARGBRow_MSA     : ~7x
      I422ToRGBARow_MSA     : ~7x
      
      I422ToARGBRow_Any_MSA : ~6.9x
      I422ToRGBARow_Any_MSA : ~6.8x
      
      Regarding performance measurement, We have created standalone tests which pass in row's data from a 1920x1080 filled buffer to both the C and MSA functions. And such N iterations are executed to get more accurate timings of C vs MSA.
      
      Review URL: https://codereview.chromium.org/2430313005 .
      f5d5bd88
  24. 19 Oct, 2016 1 commit
  25. 07 Oct, 2016 1 commit
  26. 04 Oct, 2016 1 commit
  27. 26 Sep, 2016 1 commit
  28. 22 Sep, 2016 1 commit