Update dgemm_kernel_4x8_haswell.S
authorwjc404 <52632443+wjc404@users.noreply.github.com>
Fri, 19 Jul 2019 15:58:24 +0000 (23:58 +0800)
committerGitHub <noreply@github.com>
Fri, 19 Jul 2019 15:58:24 +0000 (23:58 +0800)
kernel/x86_64/dgemm_kernel_4x8_haswell.S

index e26bdde..225af36 100644 (file)
@@ -1865,12 +1865,15 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 \r
        SAVE4x12\r
 \r
+        /* here for the prefetch of next b source block */\r
+       /* the increment should be proportional to the ratio of GEMM_Q/GEMM_P */\r
+       /* currently an increment of 128 byte is suitable */\r
         salq    $3, K\r
         prefetcht2 32(B)\r
         prefetcht2 32(B, K, 8)\r
         prefetcht2 96(B)\r
         prefetcht2 96(B, K, 8)\r
-        addq    $128, B\r
+        addq    $128, B /* increment */\r
         sarq    $3, K\r
 \r
        decq    I                       # i --\r
@@ -1880,6 +1883,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 /**************************************************************************\r
 * Rest of M \r
 ***************************************************************************/\r
+        /* recover the original value of pointer B */\r
         movq    M, I\r
         sarq    $2, I\r
         salq    $7, I\r
@@ -2160,6 +2164,9 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 \r
        SAVE4x12\r
 \r
+        /* here for the prefetch of next b source block */\r
+       /* the increment should be proportional to the ratio of GEMM_Q/GEMM_P */\r
+       /* currently an increment of 128 byte is suitable */\r
         salq    $3, K\r
         prefetcht2 (B)\r
         prefetcht2 (B, K, 8)\r
@@ -2175,7 +2182,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 /**************************************************************************\r
 * Rest of M \r
 ***************************************************************************/\r
-\r
+        /* recover the original value of pointer B */\r
         movq    M, I\r
         sarq    $2, I\r
         salq    $7, I\r