From fe8d2637543087728b3479b6bbfef2d5a5ec0ed4 Mon Sep 17 00:00:00 2001 From: Cody Yu Date: Wed, 7 Jul 2021 20:51:28 +0000 Subject: [PATCH 1/3] [Bug] Fix x86 dense schedule extern ops --- python/tvm/topi/x86/dense.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/python/tvm/topi/x86/dense.py b/python/tvm/topi/x86/dense.py index 189ac5bd34bd..a24b038ff6b8 100644 --- a/python/tvm/topi/x86/dense.py +++ b/python/tvm/topi/x86/dense.py @@ -28,7 +28,7 @@ from .utils import get_fp32_len from .injective import schedule_injective_from_existing -from .. import tag +from .. import generic, tag from ..utils import traverse_inline, get_const_tuple @@ -326,7 +326,7 @@ def dense_cblas(cfg, data, weight, bias=None, out_dtype=None): @autotvm.register_topi_schedule("dense_cblas.x86") def schedule_dense_cblas(_, outs): """Create schedule for dense_cblas. This is an alias of matmul_nt operator.""" - return schedule_matmul_blas_common(outs) + return generic.schedule_extern(outs) @autotvm.register_topi_compute("dense_mkl.x86") @@ -350,7 +350,7 @@ def dense_mkldnn(cfg, data, weight, bias=None, out_dtype=None): @autotvm.register_topi_schedule("dense_mkldnn.x86") def schedule_dense_mkldnn(_, outs): """Create schedule for dense_mkldnn. This is an alias of matmul_nt operator.""" - return schedule_matmul_blas_common(outs) + return generic.schedule_extern(outs) @autotvm.register_topi_compute("matmul_cblas.x86") From 1e6273c941683361c6d4cc21b2f44a09704a5225 Mon Sep 17 00:00:00 2001 From: Cody Yu Date: Thu, 8 Jul 2021 00:26:10 +0000 Subject: [PATCH 2/3] more --- python/tvm/topi/x86/dense.py | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) diff --git a/python/tvm/topi/x86/dense.py b/python/tvm/topi/x86/dense.py index a24b038ff6b8..f0c223fad48b 100644 --- a/python/tvm/topi/x86/dense.py +++ b/python/tvm/topi/x86/dense.py @@ -306,17 +306,6 @@ def matmul_blas_common(cfg, tensor_a, tensor_b, bias, out_dtype, transpose_a, tr return C -def schedule_matmul_blas_common(outs): - """Default matmul schedule for BLAS library""" - s = te.create_schedule([x.op for x in outs]) - te.schedule.AutoInlineInjective(s) - - for out in outs: - if "dense" not in out.op.tag and "matmul" not in out.op.tag: - schedule_injective_from_existing(s, out) - return s - - @autotvm.register_topi_compute("dense_cblas.x86") def dense_cblas(cfg, data, weight, bias=None, out_dtype=None): """Compute dense using cblas. This is an alias of matmul_nt operator.""" @@ -338,7 +327,7 @@ def dense_mkl(cfg, data, weight, bias=None, out_dtype=None): @autotvm.register_topi_schedule("dense_mkl.x86") def schedule_dense_mkl(_, outs): """Create schedule for dense_mkl. This is an alias of matmul_nt operator.""" - return schedule_matmul_blas_common(outs) + return generic.schedule_extern(outs) @autotvm.register_topi_compute("dense_mkldnn.x86") @@ -366,7 +355,7 @@ def matmul_cblas( @autotvm.register_topi_schedule("matmul_cblas.x86") def schedule_matmul_cblas(_, outs): """Create schedule for matmul_cblas.""" - return schedule_matmul_blas_common(outs) + return generic.schedule_extern(outs) @autotvm.register_topi_compute("matmul_mkl.x86") @@ -382,7 +371,7 @@ def matmul_mkl( @autotvm.register_topi_schedule("matmul_mkl.x86") def schedule_matmul_mkl(_, outs): """Create schedule for matmul_mkl.""" - return schedule_matmul_blas_common(outs) + return generic.schedule_extern(outs) @autotvm.register_topi_compute("matmul_mkldnn.x86") @@ -398,4 +387,4 @@ def matmul_mkldnn( @autotvm.register_topi_schedule("matmul_mkldnn.x86") def schedule_matmul_mkldnn(_, outs): """Create schedule for matmul_mkldnn.""" - return schedule_matmul_blas_common(outs) + return generic.schedule_extern(outs) From d93d3d716f5b211972897246d437b194b623f2ad Mon Sep 17 00:00:00 2001 From: Cody Yu Date: Thu, 8 Jul 2021 17:20:07 +0000 Subject: [PATCH 3/3] lint --- python/tvm/topi/x86/dense.py | 1 - 1 file changed, 1 deletion(-) diff --git a/python/tvm/topi/x86/dense.py b/python/tvm/topi/x86/dense.py index f0c223fad48b..6f2c202e3f61 100644 --- a/python/tvm/topi/x86/dense.py +++ b/python/tvm/topi/x86/dense.py @@ -27,7 +27,6 @@ from tvm.contrib import mkldnn from .utils import get_fp32_len -from .injective import schedule_injective_from_existing from .. import generic, tag from ..utils import traverse_inline, get_const_tuple