Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
MindSpore
akg
提交
86676f2c
A
akg
项目概览
MindSpore
/
akg
通知
58
Star
7
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
akg
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
86676f2c
编写于
6月 22, 2020
作者:
M
mindspore-ci-bot
提交者:
Gitee
6月 22, 2020
浏览文件
操作
浏览文件
下载
差异文件
!10 update matmul operator tiling
Merge pull request !10 from hiranoaya/bert_matmul
上级
95c81242
b3b05186
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
69 addition
and
4 deletion
+69
-4
python/akg/ops/nn/matmul.py
python/akg/ops/nn/matmul.py
+46
-4
tests/operators/cube/test_matmul_001.py
tests/operators/cube/test_matmul_001.py
+23
-0
未找到文件。
python/akg/ops/nn/matmul.py
浏览文件 @
86676f2c
...
...
@@ -29,7 +29,49 @@ matmul_set_dim_map = {
str
(((
1
,
16
,
49
,
16
,
16
),
(
1
,
49
,
49
,
16
,
16
),
0
,
'zZ'
,
'zZ'
,
'zZ'
,
False
,
False
,
'float16'
,
'float32'
))
:
([(
1
,
1
),(
2
,
2
),(
16
,
16
),(
16
,
16
),(
49
,
49
)],
{
"bypass"
:
0
}),
str
(((
1
,
16
,
49
,
16
,
16
),
(
1
,
49
,
16
,
16
,
16
),
0
,
'zZ'
,
'zZ'
,
'zZ'
,
False
,
False
,
'float16'
,
'float32'
))
:
([(
2
,
2
),(
2
,
2
),(
16
,
16
),(
16
,
16
),(
49
,
49
)],
{
"bypass"
:
0
}),
str
(((
1
,
2
,
64
,
16
,
16
),
(
1
,
2
,
64
,
16
,
16
),
0
,
'zZ'
,
'zZ'
,
'zZ'
,
True
,
False
,
'float16'
,
'float32'
))
:
([(
2
,
2
),(
64
,
64
),(
16
,
16
),(
16
,
16
),(
2
,
2
)],
{
"bypass"
:
0
}),
str
(((
1
,
2
,
128
,
16
,
16
),
(
1
,
2
,
128
,
16
,
16
),
0
,
'zZ'
,
'zZ'
,
'zZ'
,
True
,
False
,
'float16'
,
'float32'
))
:
([(
2
,
2
),(
64
,
64
),(
16
,
16
),(
16
,
16
),(
2
,
2
)],
{
"bypass"
:
0
})
str
(((
1
,
2
,
128
,
16
,
16
),
(
1
,
2
,
128
,
16
,
16
),
0
,
'zZ'
,
'zZ'
,
'zZ'
,
True
,
False
,
'float16'
,
'float32'
))
:
([(
2
,
2
),(
64
,
64
),(
16
,
16
),(
16
,
16
),(
2
,
2
)],
{
"bypass"
:
0
}),
# bert best tile
# (16, 1024), (16, 1024)
str
(((
1
,
64
,
1
,
16
,
16
),
(
1
,
64
,
1
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
True
,
"float16"
,
"float16"
))
:
([(
16
,
16
),(
16
,
16
),(
32
,
32
)],
{
"bypass"
:
2
}),
# (8192, 4096), (8192, 1024)
str
(((
1
,
256
,
512
,
16
,
16
),
(
1
,
64
,
512
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
True
,
False
,
"float16"
,
"float32"
))
:
([(
8
,
8
),(
16
,
16
),(
16
,
16
),(
16
,
16
),(
8
,
1
)],
{
"bypass"
:
0
}),
# (8192, 1024), (1024, 4096)
str
(((
1
,
64
,
512
,
16
,
16
),
(
1
,
256
,
64
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
False
,
"float16"
,
"float16"
))
:
([(
16
,
16
),(
8
,
4
),(
16
,
16
),(
16
,
16
),(
64
,
8
)],
{
"bypass"
:
0
}),
# (16, 16), (16, 1024)
str
(((
1
,
1
,
1
,
16
,
16
),
(
1
,
64
,
1
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
True
,
False
,
"float16"
,
"float32"
))
:
([(
8
,
8
),(
16
,
16
),(
16
,
16
),(
16
,
16
)],
{
"bypass"
:
0
}),
# (1216, 1024), (1024, 1024)
str
(((
1
,
64
,
76
,
16
,
16
),
(
1
,
64
,
64
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
False
,
"float16"
,
"float32"
))
:
([(
4
,
4
),(
19
,
19
),(
16
,
16
),(
16
,
16
),(
4
,
1
)],
{
"bypass"
:
0
}),
# (8192, 4096), (4096, 1024)
str
(((
1
,
256
,
512
,
16
,
16
),
(
1
,
64
,
256
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
False
,
"float16"
,
"float16"
))
:
([(
8
,
8
),(
32
,
32
),(
16
,
16
),(
16
,
16
),(
2
,
1
)],
{
"bypass"
:
0
}),
# (8192, 1024), (4096, 1024)
str
(((
1
,
64
,
512
,
16
,
16
),
(
1
,
64
,
256
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
True
,
"float16"
,
"float16"
))
:
([(
8
,
8
),(
32
,
32
),(
16
,
16
),(
16
,
16
),(
2
,
1
)],
{
"bypass"
:
0
}),
# (8192, 1024), (8192, 4096)
str
(((
1
,
64
,
512
,
16
,
16
),
(
1
,
256
,
512
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
True
,
False
,
"float16"
,
"float16"
))
:
([[
8
,
8
],
[
32
,
32
],
[
16
,
16
],
[
16
,
16
],
[
16
,
2
]],
{
"bypass"
:
0
}),
# (1216, 1024), (1024, 1024)
str
(((
1
,
64
,
76
,
16
,
16
),
(
1
,
64
,
64
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
True
,
"float16"
,
"float16"
))
:
([(
8
,
8
),(
19
,
19
),(
16
,
16
),(
16
,
16
),(
16
,
1
)],
{
"bypass"
:
2
}),
# (8192, 1024), (1024, 1024)
str
(((
1
,
64
,
512
,
16
,
16
),
(
1
,
64
,
64
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
False
,
"float16"
,
"float16"
))
:
([(
16
,
4
),(
16
,
8
),(
16
,
16
),(
16
,
16
),(
64
,
16
)],
{
"bypass"
:
0
}),
# (1216, 30522), (30522, 1024)
str
(((
1
,
1908
,
76
,
16
,
16
),
(
1
,
64
,
1908
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
False
,
"float16"
,
"float16"
))
:
([(
8
,
8
),(
19
,
19
),(
16
,
16
),(
16
,
16
),(
6
,
1
)],
{
"bypass"
:
0
}),
# (1216, 30522), (1216, 1024)
str
(((
1
,
1908
,
76
,
16
,
16
),
(
1
,
64
,
76
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
True
,
False
,
"float16"
,
"float32"
))
:
([(
4
,
4
),(
18
,
18
),(
16
,
16
),(
16
,
16
),(
2
,
2
)],
{
"bypass"
:
0
}),
# (1216, 1024), (30522, 1024)
str
(((
1
,
64
,
76
,
16
,
16
),
(
1
,
64
,
1908
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
True
,
"float16"
,
"float32"
))
:
([(
9
,
9
),(
19
,
19
),(
16
,
16
),(
16
,
16
),(
64
,
1
)],
{
"bypass"
:
0
}),
# (8192, 1024), (8192, 1024)
str
(((
1
,
64
,
512
,
16
,
16
),
(
1
,
64
,
512
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
True
,
False
,
"float16"
,
"float32"
))
:
([(
4
,
4
),(
16
,
16
),(
16
,
16
),(
16
,
16
),(
16
,
4
)],
{
"bypass"
:
0
}),
# (1216, 1024), (1216, 1024)
str
(((
1
,
64
,
76
,
16
,
16
),
(
1
,
64
,
76
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
True
,
False
,
"float16"
,
"float16"
))
:
([(
16
,
16
),(
8
,
8
),(
16
,
16
),(
16
,
16
),(
4
,
2
)],
{
"bypass"
:
0
}),
# (16, 1024), (16, 1024)
str
(((
1
,
64
,
1
,
16
,
16
),
(
1
,
64
,
1
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
True
,
False
,
"float16"
,
"float32"
))
:
([(
8
,
8
),(
2
,
2
),(
16
,
16
),(
16
,
16
),(
16
,
16
)],
{
"bypass"
:
0
}),
# (16, 1024), (1024, 1024)
str
(((
1
,
64
,
1
,
16
,
16
),
(
1
,
64
,
64
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
True
,
"float16"
,
"float32"
))
:
([(
8
,
8
),(
16
,
16
),(
16
,
16
),(
32
,
8
)],
{
"bypass"
:
2
}),
# (16, 16), (16, 1024)
str
(((
1
,
1
,
1
,
16
,
16
),
(
1
,
64
,
1
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
False
,
"float16"
,
"float32"
))
:
([(
8
,
8
),(
16
,
16
),(
16
,
16
),(
16
,
16
)],
{
"bypass"
:
0
}),
# (8192, 1024), (1024, 1024)
str
(((
1
,
64
,
512
,
16
,
16
),
(
1
,
64
,
64
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
True
,
"float16"
,
"float16"
))
:
([(
16
,
8
),(
8
,
8
),(
16
,
16
),(
16
,
16
),(
64
,
8
)],
{
"bypass"
:
1
}),
# (8192, 4096), (1024, 4096)
str
(((
1
,
256
,
512
,
16
,
16
),
(
1
,
256
,
64
,
16
,
16
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
True
,
"float16"
,
"float16"
))
:
([(
8
,
8
),(
16
,
16
),(
16
,
16
),(
16
,
16
),(
128
,
8
)],
{
"bypass"
:
1
}),
}
...
...
tests/operators/cube/test_matmul_001.py
浏览文件 @
86676f2c
...
...
@@ -32,6 +32,29 @@ class TestCase(TestBase):
self
.
testarg
=
[
# caseflag,opfuncname,testRunArgs, dimArgs
# shape_x, shape_y, bias, left_format, right_format, output_format, adj_x, adj_y, dtype, out_dtype, kernel_name, attrs
# bert shape
(
"matmul_run_bert_00"
,
"matmul_run"
,
((
16
,
1024
),
(
16
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
True
,
"float16"
,
"float16"
,
"matmul_cce"
)),
(
"matmul_run_bert_01"
,
"matmul_run"
,
((
8192
,
4096
),
(
8192
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
True
,
False
,
"float16"
,
"float32"
,
"matmul_cce"
)),
(
"matmul_run_bert_02"
,
"matmul_run"
,
((
8192
,
1024
),
(
1024
,
4096
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
False
,
"float16"
,
"float16"
,
"matmul_cce"
)),
(
"matmul_run_bert_03"
,
"matmul_run"
,
((
16
,
16
),
(
16
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
True
,
False
,
"float16"
,
"float32"
,
"matmul_cce"
)),
(
"matmul_run_bert_04"
,
"matmul_run"
,
((
1216
,
1024
),
(
1024
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
False
,
"float16"
,
"float32"
,
"matmul_cce"
)),
(
"matmul_run_bert_05"
,
"matmul_run"
,
((
8192
,
4096
),
(
4096
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
False
,
"float16"
,
"float16"
,
"matmul_cce"
)),
(
"matmul_run_bert_06"
,
"matmul_run"
,
((
8192
,
1024
),
(
4096
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
True
,
"float16"
,
"float16"
,
"matmul_cce"
)),
(
"matmul_run_bert_07"
,
"matmul_run"
,
((
8192
,
1024
),
(
8192
,
4096
),
0
,
"zN"
,
"zN"
,
"zN"
,
True
,
False
,
"float16"
,
"float16"
,
"matmul_cce"
)),
(
"matmul_run_bert_08"
,
"matmul_run"
,
((
1216
,
1024
),
(
1024
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
True
,
"float16"
,
"float16"
,
"matmul_cce"
)),
(
"matmul_run_bert_09"
,
"matmul_run"
,
((
8192
,
1024
),
(
1024
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
False
,
"float16"
,
"float16"
,
"matmul_cce"
)),
(
"matmul_run_bert_10"
,
"matmul_run"
,
((
1216
,
30522
),
(
30522
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
False
,
"float16"
,
"float16"
,
"matmul_cce"
)),
(
"matmul_run_bert_11"
,
"matmul_run"
,
((
1216
,
30522
),
(
1216
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
True
,
False
,
"float16"
,
"float32"
,
"matmul_cce"
)),
(
"matmul_run_bert_12"
,
"matmul_run"
,
((
1216
,
1024
),
(
30522
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
True
,
"float16"
,
"float32"
,
"matmul_cce"
)),
(
"matmul_run_bert_13"
,
"matmul_run"
,
((
8192
,
1024
),
(
8192
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
True
,
False
,
"float16"
,
"float32"
,
"matmul_cce"
)),
(
"matmul_run_bert_14"
,
"matmul_run"
,
((
1216
,
1024
),
(
1216
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
True
,
False
,
"float16"
,
"float16"
,
"matmul_cce"
)),
(
"matmul_run_bert_15"
,
"matmul_run"
,
((
16
,
1024
),
(
16
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
True
,
False
,
"float16"
,
"float32"
,
"matmul_cce"
)),
(
"matmul_run_bert_16"
,
"matmul_run"
,
((
16
,
1024
),
(
1024
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
True
,
"float16"
,
"float32"
,
"matmul_cce"
)),
(
"matmul_run_bert_17"
,
"matmul_run"
,
((
16
,
16
),
(
16
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
False
,
"float16"
,
"float32"
,
"matmul_cce"
)),
(
"matmul_run_bert_18"
,
"matmul_run"
,
((
8192
,
1024
),
(
1024
,
1024
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
True
,
"float16"
,
"float16"
,
"matmul_cce"
)),
(
"matmul_run_bert_19"
,
"matmul_run"
,
((
8192
,
4096
),
(
1024
,
4096
),
0
,
"zN"
,
"zN"
,
"zN"
,
False
,
True
,
"float16"
,
"float16"
,
"matmul_cce"
)),
# matmul_cast
(
"matmul_run1"
,
"matmul_run"
,
((
64
,
1024
),
(
16
,
1024
),
0
,
"zZ"
,
"nZ"
,
"zN"
,
False
,
True
,
"float16"
,
"float32"
,
"matmul_cast_cce"
)),
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录