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
23f30d1b
Commit
23f30d1b
authored
Feb 19, 2019
by
Shucai Xiao
Browse files
Merge branch 'develop' of
https://github.com/ROCmSoftwarePlatform/AMDMIGraphX
into lstm_operator
parents
1f6c387e
3689dab0
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
12 additions
and
15 deletions
+12
-15
src/opt/memory_coloring_impl.cpp
src/opt/memory_coloring_impl.cpp
+1
-2
src/targets/gpu/include/migraphx/gpu/context.hpp
src/targets/gpu/include/migraphx/gpu/context.hpp
+3
-3
src/targets/gpu/include/migraphx/gpu/hip.hpp
src/targets/gpu/include/migraphx/gpu/hip.hpp
+3
-2
src/targets/gpu/lowering.cpp
src/targets/gpu/lowering.cpp
+1
-2
src/targets/gpu/write_literals.cpp
src/targets/gpu/write_literals.cpp
+1
-2
test/memory_coloring_test.cpp
test/memory_coloring_test.cpp
+3
-4
No files found.
src/opt/memory_coloring_impl.cpp
View file @
23f30d1b
...
...
@@ -203,9 +203,8 @@ void memory_coloring_impl::rewrite()
if
(
is_allocate
(
ins
))
{
assert
(
!
ins
->
inputs
().
empty
());
p_program
->
replace_instruction
(
ins
,
op
::
load
{
ins
->
inputs
().
at
(
0
)
->
get_shape
(),
offset
},
scratch_param
);
ins
,
op
::
load
{
ins
->
get_shape
(),
offset
},
scratch_param
);
}
else
if
(
is_literal
(
ins
))
{
...
...
src/targets/gpu/include/migraphx/gpu/context.hpp
View file @
23f30d1b
...
...
@@ -11,7 +11,7 @@ namespace migraphx {
inline
namespace
MIGRAPHX_INLINE_NS
{
namespace
gpu
{
MIGRAPHX_DECLARE_ENV_VAR
(
MIGRAPHX_
DIS
ABLE_NULL_STREAM
)
MIGRAPHX_DECLARE_ENV_VAR
(
MIGRAPHX_
EN
ABLE_NULL_STREAM
)
struct
hip_device
{
...
...
@@ -40,7 +40,7 @@ struct hip_device
hipStream_t
get
()
{
if
(
enabled
(
MIGRAPHX_
DIS
ABLE_NULL_STREAM
{}))
if
(
not
enabled
(
MIGRAPHX_
EN
ABLE_NULL_STREAM
{}))
{
setup
();
if
(
s
==
nullptr
)
...
...
@@ -53,7 +53,7 @@ struct hip_device
auto
create_miopen_handle
()
{
if
(
enabled
(
MIGRAPHX_
DIS
ABLE_NULL_STREAM
{}))
if
(
not
enabled
(
MIGRAPHX_
EN
ABLE_NULL_STREAM
{}))
return
make_obj
<
miopen_handle
>
(
&
miopenCreateWithStream
,
get
());
else
return
make_obj
<
miopen_handle
>
(
&
miopenCreate
);
...
...
src/targets/gpu/include/migraphx/gpu/hip.hpp
View file @
23f30d1b
...
...
@@ -23,12 +23,13 @@ void copy_to_gpu(const argument& src, const argument& dst);
struct
hip_allocate
{
shape
s
;
std
::
string
tag
{};
std
::
string
name
()
const
{
return
"hip::allocate"
;
}
shape
compute_shape
(
const
std
::
vector
<
shape
>&
inputs
)
const
{
check_shapes
{
inputs
}.
has
(
1
);
return
inputs
.
front
()
;
check_shapes
{
inputs
}.
has
(
0
);
return
s
;
}
argument
compute
(
context
&
,
const
shape
&
output_shape
,
const
std
::
vector
<
argument
>&
)
const
{
...
...
src/targets/gpu/lowering.cpp
View file @
23f30d1b
...
...
@@ -127,8 +127,7 @@ struct miopen_apply
}
else
{
auto
is
=
prog
->
add_outline
(
s
);
auto
result
=
prog
->
insert_instruction
(
ins
,
hip_allocate
{
std
::
move
(
tag
)},
is
);
auto
result
=
prog
->
insert_instruction
(
ins
,
hip_allocate
{
s
,
std
::
move
(
tag
)});
return
result
;
}
}
...
...
src/targets/gpu/write_literals.cpp
View file @
23f30d1b
...
...
@@ -37,8 +37,7 @@ void write_literals::apply(program& p) const
{
literal
l
=
ins
->
get_literal
();
auto
pre
=
p
.
add_literal
(
l
);
auto
s
=
p
.
add_outline
(
l
.
get_shape
());
auto
alloc
=
p
.
insert_instruction
(
std
::
next
(
pre
),
hip_allocate
{},
s
);
auto
alloc
=
p
.
insert_instruction
(
std
::
next
(
pre
),
hip_allocate
{
l
.
get_shape
()});
p
.
replace_instruction
(
ins
,
hip_copy
{},
pre
,
alloc
);
}
else
...
...
test/memory_coloring_test.cpp
View file @
23f30d1b
...
...
@@ -21,8 +21,8 @@ struct allocate
std
::
string
name
()
const
{
return
"allocate"
;
}
migraphx
::
shape
compute_shape
(
const
std
::
vector
<
migraphx
::
shape
>&
inputs
)
const
{
migraphx
::
check_shapes
{
inputs
,
*
this
}.
has
(
1
);
return
inputs
.
front
()
;
migraphx
::
check_shapes
{
inputs
,
*
this
}.
has
(
0
);
return
s
;
}
migraphx
::
argument
compute
(
migraphx
::
context
&
,
const
migraphx
::
shape
&
output_shape
,
...
...
@@ -34,8 +34,7 @@ struct allocate
migraphx
::
instruction_ref
add_alloc
(
migraphx
::
program
&
p
,
const
migraphx
::
shape
&
s
)
{
auto
a0
=
p
.
add_outline
(
s
);
return
p
.
add_instruction
(
allocate
{},
a0
);
return
p
.
add_instruction
(
allocate
{
s
});
}
bool
no_allocate
(
const
migraphx
::
program
&
p
)
...
...
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