[x265] [PATCH] sao: add comment for the reason of two versions of sao primitives

Divya Manivannan divya at multicorewareinc.com
Mon Apr 27 15:48:09 CEST 2015


# HG changeset patch
# User Divya Manivannan <divya at multicorewareinc.com>
# Date 1430142169 -19800
#      Mon Apr 27 19:12:49 2015 +0530
# Node ID 063c929c30fd7f1e2af3ac1b0fd1d647d690f781
# Parent  ffe98e3a23af5a05d5cedafb876db1b4960c71fc
sao: add comment for the reason of two versions of sao primitives

diff -r ffe98e3a23af -r 063c929c30fd source/common/primitives.h
--- a/source/common/primitives.h	Mon Apr 27 18:07:45 2015 +0530
+++ b/source/common/primitives.h	Mon Apr 27 19:12:49 2015 +0530
@@ -275,8 +275,17 @@
 
     sign_t                sign;
     saoCuOrgE0_t          saoCuOrgE0;
+
+    /* To avoid the overhead in avx2 optimization in handling width=16, SAO_E0_1 is split
+     * into two parts: saoCuOrgE1, saoCuOrgE1_2Rows */
     saoCuOrgE1_t          saoCuOrgE1, saoCuOrgE1_2Rows;
+
+    // saoCuOrgE2[0] is used for width<=16 and saoCuOrgE2[1] is used for width > 16.
     saoCuOrgE2_t          saoCuOrgE2[2];
+
+    /* In avx2 optimization, two rows cannot be handled simultaneously since it requires 
+     * a pixel from the previous row. So, saoCuOrgE3[0] is used for width<=16 and 
+     * saoCuOrgE3[1] is used for width > 16. */
     saoCuOrgE3_t          saoCuOrgE3[2];
     saoCuOrgB0_t          saoCuOrgB0;
 


More information about the x265-devel mailing list