Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
gaoqiong
MIGraphX
Commits
40babfd5
Commit
40babfd5
authored
Feb 03, 2019
by
Shucai Xiao
Browse files
clang format.
parent
03b59435
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
19 additions
and
15 deletions
+19
-15
src/rewrite_gru.cpp
src/rewrite_gru.cpp
+19
-15
No files found.
src/rewrite_gru.cpp
View file @
40babfd5
...
@@ -92,11 +92,12 @@ void rewrite_gru::apply(program& prog) const
...
@@ -92,11 +92,12 @@ void rewrite_gru::apply(program& prog) const
// The following logic is to ensure the last instruction rewritten
// The following logic is to ensure the last instruction rewritten
// from gru operator is a concat
// from gru operator is a concat
instruction_ref
hidden_state
{};
instruction_ref
hidden_state
{};
if
(
ret_forward
[
0
]
==
prog
.
end
())
if
(
ret_forward
[
0
]
==
prog
.
end
())
{
{
hidden_state
=
prog
.
replace_instruction
(
ins
,
op
::
concat
{
1
},
ret_forward
[
1
],
ret_reverse
[
1
]);
hidden_state
=
prog
.
replace_instruction
(
ins
,
op
::
concat
{
1
},
ret_forward
[
1
],
ret_reverse
[
1
]);
}
}
else
else
{
{
ret_forward
[
0
]
=
ret_forward
[
0
]
=
prog
.
insert_instruction
(
ins
,
op
::
concat
{
0
},
ret_forward
[
0
],
ret_forward
[
1
]);
prog
.
insert_instruction
(
ins
,
op
::
concat
{
0
},
ret_forward
[
0
],
ret_forward
[
1
]);
...
@@ -104,7 +105,7 @@ void rewrite_gru::apply(program& prog) const
...
@@ -104,7 +105,7 @@ void rewrite_gru::apply(program& prog) const
prog
.
insert_instruction
(
ins
,
op
::
concat
{
0
},
ret_reverse
[
1
],
ret_reverse
[
0
]);
prog
.
insert_instruction
(
ins
,
op
::
concat
{
0
},
ret_reverse
[
1
],
ret_reverse
[
0
]);
hidden_state
=
prog
.
replace_instruction
(
hidden_state
=
prog
.
replace_instruction
(
ins
,
op
::
concat
{
1
},
{
ret_forward
[
0
],
ret_reverse
[
0
]});
ins
,
op
::
concat
{
1
},
{
ret_forward
[
0
],
ret_reverse
[
0
]});
}
}
map_last_output
[
hidden_state
]
=
last_output
;
map_last_output
[
hidden_state
]
=
last_output
;
}
}
else
else
...
@@ -147,7 +148,7 @@ void rewrite_gru::apply(program& prog) const
...
@@ -147,7 +148,7 @@ void rewrite_gru::apply(program& prog) const
auto
last_output
=
prog
.
insert_instruction
(
ins
,
op
::
squeeze
{{
0
}},
ret
[
1
]);
auto
last_output
=
prog
.
insert_instruction
(
ins
,
op
::
squeeze
{{
0
}},
ret
[
1
]);
instruction_ref
hidden_state
{};
instruction_ref
hidden_state
{};
if
(
ret
[
0
]
==
prog
.
end
())
if
(
ret
[
0
]
==
prog
.
end
())
{
{
hidden_state
=
prog
.
replace_instruction
(
ins
,
op
::
concat
{
0
},
ret
[
1
]);
hidden_state
=
prog
.
replace_instruction
(
ins
,
op
::
concat
{
0
},
ret
[
1
]);
}
}
...
@@ -155,7 +156,8 @@ void rewrite_gru::apply(program& prog) const
...
@@ -155,7 +156,8 @@ void rewrite_gru::apply(program& prog) const
{
{
auto
concat_arg0
=
is_forward
?
ret
[
0
]
:
ret
[
1
];
auto
concat_arg0
=
is_forward
?
ret
[
0
]
:
ret
[
1
];
auto
concat_arg1
=
is_forward
?
ret
[
1
]
:
ret
[
1
];
auto
concat_arg1
=
is_forward
?
ret
[
1
]
:
ret
[
1
];
hidden_state
=
prog
.
replace_instruction
(
ins
,
op
::
concat
{
0
},
concat_arg0
,
concat_arg1
);
hidden_state
=
prog
.
replace_instruction
(
ins
,
op
::
concat
{
0
},
concat_arg0
,
concat_arg1
);
}
}
map_last_output
[
hidden_state
]
=
last_output
;
map_last_output
[
hidden_state
]
=
last_output
;
}
}
...
@@ -188,8 +190,8 @@ std::vector<instruction_ref> rewrite_gru::gru_cell(bool is_forward,
...
@@ -188,8 +190,8 @@ std::vector<instruction_ref> rewrite_gru::gru_cell(bool is_forward,
operation
&
actv_func2
)
const
operation
&
actv_func2
)
const
{
{
instruction_ref
hidden_states
=
prog
.
end
(),
last_output
;
instruction_ref
hidden_states
=
prog
.
end
(),
last_output
;
long
seq_len
=
static_cast
<
long
>
(
input
->
get_shape
().
lens
()[
0
]);
long
seq_len
=
static_cast
<
long
>
(
input
->
get_shape
().
lens
()[
0
]);
long
hs
=
static_cast
<
long
>
(
r
->
get_shape
().
lens
()[
2
]);
long
hs
=
static_cast
<
long
>
(
r
->
get_shape
().
lens
()[
2
]);
migraphx
::
shape
s
(
input
->
get_shape
().
type
(),
migraphx
::
shape
s
(
input
->
get_shape
().
type
(),
{
input
->
get_shape
().
lens
()[
1
],
static_cast
<
std
::
size_t
>
(
hs
)});
{
input
->
get_shape
().
lens
()[
1
],
static_cast
<
std
::
size_t
>
(
hs
)});
...
@@ -310,19 +312,21 @@ std::vector<instruction_ref> rewrite_gru::gru_cell(bool is_forward,
...
@@ -310,19 +312,21 @@ std::vector<instruction_ref> rewrite_gru::gru_cell(bool is_forward,
sih
=
prog
.
insert_instruction
(
ins
,
op
::
add
{},
one_minus_zt_ht
,
zt_ht1
);
sih
=
prog
.
insert_instruction
(
ins
,
op
::
add
{},
one_minus_zt_ht
,
zt_ht1
);
last_output
=
prog
.
insert_instruction
(
ins
,
op
::
unsqueeze
{{
0
,
1
}},
sih
);
last_output
=
prog
.
insert_instruction
(
ins
,
op
::
unsqueeze
{{
0
,
1
}},
sih
);
if
(
i
<
seq_len
-
1
)
if
(
i
<
seq_len
-
1
)
{
{
if
(
is_forward
)
if
(
is_forward
)
{
{
hidden_states
=
(
seq_index
==
0
)
hidden_states
=
?
last_output
(
seq_index
==
0
)
:
prog
.
insert_instruction
(
ins
,
op
::
concat
{
0
},
hidden_states
,
last_output
);
?
last_output
:
prog
.
insert_instruction
(
ins
,
op
::
concat
{
0
},
hidden_states
,
last_output
);
}
}
else
else
{
{
hidden_states
=
(
seq_index
==
seq_len
-
1
)
hidden_states
=
?
last_output
(
seq_index
==
seq_len
-
1
)
:
prog
.
insert_instruction
(
ins
,
op
::
concat
{
0
},
last_output
,
hidden_states
);
?
last_output
:
prog
.
insert_instruction
(
ins
,
op
::
concat
{
0
},
last_output
,
hidden_states
);
}
}
}
}
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment