forked from pytorch/pytorch
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTestFuser.test_lstm_cuda-backward.expect
108 lines (108 loc) · 3.68 KB
/
TestFuser.test_lstm_cuda-backward.expect
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
graph(%0 : Float(*, *)
%1 : Float(*, *)
%2 : UndefinedTensor
%3 : UndefinedTensor
%4 : UndefinedTensor
%5 : UndefinedTensor
%6 : UndefinedTensor
%7 : UndefinedTensor
%8 : UndefinedTensor
%9 : Float(*, *)
%10 : Float(*, *)
%11 : Float(*, *)
%12 : Float(*, *)
%13 : Float(*, *)
%14 : int[]
%15 : int[]
%16 : int[]
%17 : int[]
%18 : int[]
%19 : int[]
%ingate : Float(*, *)
%forgetgate : Float(*, *)
%cellgate : Float(*, *)
%outgate : Float(*, *)
%24 : int[]
%25 : int[]
%26 : Float(*, *)) {
%27 : Float(*, *) = aten::mul(%0, %26)
%28 : int[] = aten::size(%outgate)
%grad_self.1 : Tensor = aten::sum_to_size(%27, %28)
%30 : Float(*, *) = aten::mul(%0, %outgate)
%31 : int[] = aten::size(%26)
%grad_other.1 : Tensor = aten::sum_to_size(%30, %31)
%33 : Tensor = prim::FusionGroup_0(%1, %grad_other.1, %26)
%34 : Tensor = prim::SumToSize(%33, %24)
%35 : Tensor = prim::SumToSize(%33, %25)
%36 : Tensor = aten::mul(%35, %cellgate)
%37 : int[] = aten::size(%ingate)
%grad_self.3 : Tensor = aten::sum_to_size(%36, %37)
%39 : Tensor = aten::mul(%35, %ingate)
%40 : int[] = aten::size(%cellgate)
%grad_other.3 : Tensor = aten::sum_to_size(%39, %40)
%42 : Tensor = aten::mul(%34, %9)
%43 : int[] = aten::size(%forgetgate)
%grad_self.5 : Tensor = aten::sum_to_size(%42, %43)
%45 : Tensor = aten::mul(%34, %forgetgate)
%46 : int[] = aten::size(%9)
%grad_other.5 : Tensor = aten::sum_to_size(%45, %46)
%48 : Tensor = prim::FusionGroup_1(%grad_self.3, %ingate, %grad_self.5, %forgetgate, %grad_other.3, %cellgate, %grad_self.1, %outgate)
%49 : Tensor = prim::SumToSize(%48, %19)
%50 : Tensor = prim::SumToSize(%48, %17)
%51 : Tensor = prim::SumToSize(%48, %14)
%52 : Tensor = prim::SumToSize(%48, %15)
%53 : Float(*, *) = aten::t(%13)
%54 : Float(*, *) = aten::mm(%52, %53)
%55 : Float(*, *) = aten::t(%10)
%56 : Float(*, *) = aten::mm(%55, %52)
%57 : Float(*, *) = aten::t(%56)
%58 : Float(*, *) = aten::t(%12)
%59 : Float(*, *) = aten::mm(%51, %58)
%60 : Float(*, *) = aten::t(%11)
%61 : Float(*, *) = aten::mm(%60, %51)
%62 : Float(*, *) = aten::t(%61)
return (%grad_other.5, %49, %50, %54, %57, %59, %62);
}
with prim::FusionGroup_0 = graph(%0 : Float(*, *)
%1 : Tensor
%2 : Float(*, *)) {
%3 : Float(*, *) = aten::mul(%2, %2)
%4 : Float(*, *) = aten::neg(%3)
%5 : int = prim::Constant[value=1]()
%6 : Float(*, *) = aten::add(%4, %5, %5)
%7 : Tensor = aten::mul(%1, %6)
%8 : int = prim::Constant[value=1]()
%9 : Tensor = aten::add(%0, %7, %8)
return (%9);
}
with prim::FusionGroup_1 = graph(%0 : Tensor
%1 : Float(*, *)
%2 : Tensor
%3 : Float(*, *)
%4 : Tensor
%5 : Float(*, *)
%6 : Tensor
%7 : Float(*, *)) {
%8 : Float(*, *) = aten::neg(%7)
%9 : int = prim::Constant[value=1]()
%10 : Float(*, *) = aten::add(%8, %9, %9)
%11 : Float(*, *) = aten::mul(%10, %7)
%12 : Tensor = aten::mul(%11, %6)
%13 : Float(*, *) = aten::mul(%5, %5)
%14 : Float(*, *) = aten::neg(%13)
%15 : int = prim::Constant[value=1]()
%16 : Float(*, *) = aten::add(%14, %15, %15)
%17 : Tensor = aten::mul(%4, %16)
%18 : Float(*, *) = aten::neg(%3)
%19 : int = prim::Constant[value=1]()
%20 : Float(*, *) = aten::add(%18, %19, %19)
%21 : Float(*, *) = aten::mul(%20, %3)
%22 : Tensor = aten::mul(%21, %2)
%23 : Float(*, *) = aten::neg(%1)
%24 : int = prim::Constant[value=1]()
%25 : Float(*, *) = aten::add(%23, %24, %24)
%26 : Float(*, *) = aten::mul(%25, %1)
%27 : Tensor = aten::mul(%26, %0)
%28 : Tensor = prim::FusedConcat[dim=1](%27, %22, %17, %12)
return (%28);
}