Skip to content

Commit 65afee5

Browse files
committed
deepxIR:指令文档
1 parent 7e350cf commit 65afee5

3 files changed

Lines changed: 74 additions & 3 deletions

File tree

doc/op.md

Lines changed: 70 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,73 @@
2020
融合算子
2121
神经网络层:Conv, ConvInteger, ConvTranspose, DeformConv, GRU, LSTM, RNN, QLinearConv, QLinearMatMul
2222
损失函数:NegativeLogLikelihoodLoss, SoftmaxCrossEntropyLoss
23-
其他融合操作:AffineGrid, CenterCropPad, Col2Im, Compress, DFT, ImageDecoder, Loop, NonMaxSuppression, Optional, OptionalGetElement, OptionalHasElement, RegexFullMatch, Scan, TfIdfVectorizer, Upsample
23+
其他融合操作:AffineGrid, CenterCropPad, Col2Im, Compress, DFT, ImageDecoder, Loop, NonMaxSuppression, Optional, OptionalGetElement, OptionalHasElement, RegexFullMatch, Scan, TfIdfVectorizer, Upsample
24+
25+
## op通讯指令格式
26+
27+
### 设置常量
28+
+ int数组
29+
argset@int 1 2 3->v_1
30+
+ int
31+
argset@int 10->int_10
32+
+ float数组
33+
argset@float 1.0 2.0 3.0->v_3
34+
+ float
35+
argset@float 10.0->float_10
36+
37+
38+
39+
### 创建张量
40+
newtensor@int32 1 2 3->a
41+
42+
### 填充张量
43+
44+
constant@int32 int_10->a
45+
46+
### 打印张量
47+
print a
48+
49+
### 逐元素操作
50+
add@float32 a b->a requires_grad=true
51+
add_scalar@float32 a 10->a requires_grad=true
52+
mul@float32 a(a_grad) b(b_grad)->a(a_grad) requires_grad=true
53+
mul_scalar@float32 a 10->a requires_grad=true
54+
div@float32 a b->a requires_grad=true
55+
div_scalar@float32 a 10->a requires_grad=true
56+
sqrt@float32 a->a requires_grad=true
57+
exp@float32 a->a requires_grad=true
58+
59+
60+
### 广播操作
61+
broadcast@float32 a b->a requires_grad=true
62+
63+
64+
### 矩阵操作
65+
matmul@float32 a b->a requires_grad=true
66+
67+
68+
### 归约操作
69+
sum@float32 a->a requires_grad=true
70+
max@float32 a->a requires_grad=true
71+
min@float32 a->a requires_grad=true
72+
73+
74+
### 形状操作
75+
reshape@float32 a 1 2 3->a requires_grad=true
76+
flatten@float32 a->a requires_grad=true
77+
transpose@float32 a 1 2->a requires_grad=true
78+
unsqueeze@float32 a 1->a requires_grad=true
79+
squeeze@float32 a 1->a requires_grad=true
80+
81+
### 类型操作
82+
cast@float32 a->a requires_grad=true
83+
cast_like@float32 a b->a requires_grad=true
84+
85+
86+
87+
88+
89+
90+
91+
92+

doc/range.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,6 @@ range函数是shape类中的一个函数,用于根据shape对tensor进行遍
99
| | N | | print |
1010
| 函数 || 0 | 不需要并行 |
1111
| 函数 || 0 | 需要并行 |
12-
| 函数 || 0 | 不需要并行 |
12+
| 函数 || 0 | 不需要并行 |
13+
14+
##

excuter/op-mem-ompsimd/src/deepx/op/opfactory.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ namespace deepx::op
8686
opfactory.add_op(Exp<double>());
8787
}
8888
void register_elementwise_op(OpFactory &opfactory){
89-
register_add(opfactory);
89+
register_add(opfactory);
9090
register_add_scalar(opfactory);
9191
register_sub(opfactory);
9292
register_mul(opfactory);

0 commit comments

Comments
 (0)