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
264a7647
Commit
264a7647
authored
Jul 26, 2023
by
Brian Pickrell
Browse files
Merge branch 'develop' into multinomial_parse_merge
parents
d99729f8
8e18544f
Changes
269
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
74 additions
and
60 deletions
+74
-60
src/include/migraphx/file_buffer.hpp
src/include/migraphx/file_buffer.hpp
+6
-4
src/include/migraphx/fuse_pointwise.hpp
src/include/migraphx/fuse_pointwise.hpp
+1
-1
src/include/migraphx/fuse_reduce.hpp
src/include/migraphx/fuse_reduce.hpp
+1
-1
src/include/migraphx/generate.hpp
src/include/migraphx/generate.hpp
+5
-5
src/include/migraphx/inline_module.hpp
src/include/migraphx/inline_module.hpp
+1
-1
src/include/migraphx/insert_pad.hpp
src/include/migraphx/insert_pad.hpp
+1
-1
src/include/migraphx/instruction.hpp
src/include/migraphx/instruction.hpp
+10
-8
src/include/migraphx/instruction_ref.hpp
src/include/migraphx/instruction_ref.hpp
+1
-1
src/include/migraphx/json.hpp
src/include/migraphx/json.hpp
+4
-4
src/include/migraphx/layout_nhwc.hpp
src/include/migraphx/layout_nhwc.hpp
+1
-1
src/include/migraphx/literal.hpp
src/include/migraphx/literal.hpp
+2
-2
src/include/migraphx/load_save.hpp
src/include/migraphx/load_save.hpp
+11
-8
src/include/migraphx/make_op.hpp
src/include/migraphx/make_op.hpp
+5
-5
src/include/migraphx/marker.hpp
src/include/migraphx/marker.hpp
+3
-3
src/include/migraphx/memory_coloring.hpp
src/include/migraphx/memory_coloring.hpp
+1
-1
src/include/migraphx/module.hpp
src/include/migraphx/module.hpp
+4
-4
src/include/migraphx/msgpack.hpp
src/include/migraphx/msgpack.hpp
+5
-4
src/include/migraphx/normalize_attributes.hpp
src/include/migraphx/normalize_attributes.hpp
+2
-1
src/include/migraphx/normalize_ops.hpp
src/include/migraphx/normalize_ops.hpp
+1
-1
src/include/migraphx/onnx.hpp
src/include/migraphx/onnx.hpp
+9
-4
No files found.
src/include/migraphx/file_buffer.hpp
View file @
264a7647
...
@@ -31,11 +31,13 @@
...
@@ -31,11 +31,13 @@
namespace
migraphx
{
namespace
migraphx
{
inline
namespace
MIGRAPHX_INLINE_NS
{
inline
namespace
MIGRAPHX_INLINE_NS
{
std
::
vector
<
char
>
read_buffer
(
const
std
::
string
&
filename
,
size_t
offset
=
0
,
size_t
nbytes
=
0
);
MIGRAPHX_EXPORT
std
::
vector
<
char
>
std
::
string
read_string
(
const
std
::
string
&
filename
);
read_buffer
(
const
std
::
string
&
filename
,
size_t
offset
=
0
,
size_t
nbytes
=
0
);
MIGRAPHX_EXPORT
std
::
string
read_string
(
const
std
::
string
&
filename
);
void
write_buffer
(
const
std
::
string
&
filename
,
const
char
*
buffer
,
std
::
size_t
size
);
MIGRAPHX_EXPORT
void
void
write_buffer
(
const
std
::
string
&
filename
,
const
std
::
vector
<
char
>&
buffer
);
write_buffer
(
const
std
::
string
&
filename
,
const
char
*
buffer
,
std
::
size_t
size
);
MIGRAPHX_EXPORT
void
write_buffer
(
const
std
::
string
&
filename
,
const
std
::
vector
<
char
>&
buffer
);
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace migraphx
}
// namespace migraphx
...
...
src/include/migraphx/fuse_pointwise.hpp
View file @
264a7647
...
@@ -32,7 +32,7 @@ inline namespace MIGRAPHX_INLINE_NS {
...
@@ -32,7 +32,7 @@ inline namespace MIGRAPHX_INLINE_NS {
struct
module_pass_manager
;
struct
module_pass_manager
;
struct
fuse_pointwise
struct
MIGRAPHX_EXPORT
fuse_pointwise
{
{
std
::
string
name
()
const
{
return
"fuse_pointwise"
;
}
std
::
string
name
()
const
{
return
"fuse_pointwise"
;
}
void
apply
(
module_pass_manager
&
mpm
)
const
;
void
apply
(
module_pass_manager
&
mpm
)
const
;
...
...
src/include/migraphx/fuse_reduce.hpp
View file @
264a7647
...
@@ -32,7 +32,7 @@ inline namespace MIGRAPHX_INLINE_NS {
...
@@ -32,7 +32,7 @@ inline namespace MIGRAPHX_INLINE_NS {
struct
module_pass_manager
;
struct
module_pass_manager
;
struct
fuse_reduce
struct
MIGRAPHX_EXPORT
fuse_reduce
{
{
std
::
string
name
()
const
{
return
"fuse_reduce"
;
}
std
::
string
name
()
const
{
return
"fuse_reduce"
;
}
void
apply
(
module_pass_manager
&
mpm
)
const
;
void
apply
(
module_pass_manager
&
mpm
)
const
;
...
...
src/include/migraphx/generate.hpp
View file @
264a7647
...
@@ -117,20 +117,20 @@ auto generate_tensor_data(const migraphx::shape& s, unsigned long seed = 0)
...
@@ -117,20 +117,20 @@ auto generate_tensor_data(const migraphx::shape& s, unsigned long seed = 0)
}
}
template
<
class
T
>
template
<
class
T
>
auto
fill_tensor_data
(
const
migraphx
::
shape
&
s
,
unsigned
long
value
=
0
)
auto
fill_tensor_data
(
const
migraphx
::
shape
&
s
,
double
value
=
0
)
{
{
auto
result
=
make_shared_array
<
T
>
(
s
.
element_space
());
auto
result
=
make_shared_array
<
T
>
(
s
.
element_space
());
std
::
generate
(
result
.
get
(),
result
.
get
()
+
s
.
element_space
(),
[
=
]
{
return
value
;
});
std
::
generate
(
result
.
get
(),
result
.
get
()
+
s
.
element_space
(),
[
=
]
{
return
value
;
});
return
result
;
return
result
;
}
}
argument
fill_argument
(
shape
s
,
unsigned
long
value
=
0
);
MIGRAPHX_EXPORT
argument
fill_argument
(
shape
s
,
double
value
=
0
);
argument
generate_argument
(
shape
s
,
unsigned
long
seed
=
0
);
MIGRAPHX_EXPORT
argument
generate_argument
(
shape
s
,
unsigned
long
seed
=
0
);
literal
generate_literal
(
shape
s
,
unsigned
long
seed
=
0
);
MIGRAPHX_EXPORT
literal
generate_literal
(
shape
s
,
unsigned
long
seed
=
0
);
literal
abs
(
literal
l
);
MIGRAPHX_EXPORT
literal
abs
(
literal
l
);
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace migraphx
}
// namespace migraphx
...
...
src/include/migraphx/inline_module.hpp
View file @
264a7647
...
@@ -33,7 +33,7 @@ inline namespace MIGRAPHX_INLINE_NS {
...
@@ -33,7 +33,7 @@ inline namespace MIGRAPHX_INLINE_NS {
struct
module
;
struct
module
;
struct
inline_module
struct
MIGRAPHX_EXPORT
inline_module
{
{
std
::
string
name
()
const
{
return
"inline_module"
;
}
std
::
string
name
()
const
{
return
"inline_module"
;
}
void
apply
(
module
&
m
)
const
;
void
apply
(
module
&
m
)
const
;
...
...
src/include/migraphx/insert_pad.hpp
View file @
264a7647
...
@@ -38,7 +38,7 @@ struct module;
...
@@ -38,7 +38,7 @@ struct module;
/**
/**
* insert pads if attribute of padding is asymmetrical
* insert pads if attribute of padding is asymmetrical
*/
*/
struct
insert_pad
struct
MIGRAPHX_EXPORT
insert_pad
{
{
std
::
string
name
()
const
{
return
"insert_pad"
;
}
std
::
string
name
()
const
{
return
"insert_pad"
;
}
...
...
src/include/migraphx/instruction.hpp
View file @
264a7647
...
@@ -37,14 +37,15 @@
...
@@ -37,14 +37,15 @@
namespace
migraphx
{
namespace
migraphx
{
inline
namespace
MIGRAPHX_INLINE_NS
{
inline
namespace
MIGRAPHX_INLINE_NS
{
shape
compute_shape
(
const
operation
&
op
,
const
std
::
vector
<
instruction_ref
>&
args
);
MIGRAPHX_EXPORT
shape
compute_shape
(
const
operation
&
op
,
const
std
::
vector
<
instruction_ref
>&
args
);
shape
compute_shape
(
const
operation
&
op
,
MIGRAPHX_EXPORT
shape
compute_shape
(
const
operation
&
op
,
const
std
::
vector
<
instruction_ref
>&
args
,
const
std
::
vector
<
instruction_ref
>&
args
,
const
std
::
vector
<
module_ref
>&
mods
);
const
std
::
vector
<
module_ref
>&
mods
);
std
::
vector
<
shape
>
to_shapes
(
const
std
::
vector
<
instruction_ref
>&
args
);
MIGRAPHX_EXPORT
std
::
vector
<
shape
>
to_shapes
(
const
std
::
vector
<
instruction_ref
>&
args
);
std
::
vector
<
shape
>
try_compute_shape
(
const
operation
&
op
,
const
std
::
vector
<
shape
>&
inputs
);
MIGRAPHX_EXPORT
std
::
vector
<
shape
>
try_compute_shape
(
const
operation
&
op
,
const
std
::
vector
<
shape
>&
inputs
);
struct
instruction
struct
MIGRAPHX_EXPORT
instruction
{
{
instruction
()
{}
instruction
()
{}
...
@@ -137,6 +138,7 @@ struct instruction
...
@@ -137,6 +138,7 @@ struct instruction
operation
normalized_operator
()
const
;
operation
normalized_operator
()
const
;
std
::
size_t
get_target_id
()
const
;
std
::
size_t
get_target_id
()
const
;
void
set_target_id
(
std
::
size_t
tid
);
void
set_target_id
(
std
::
size_t
tid
);
void
debug_print
()
const
;
void
debug_print
()
const
;
...
...
src/include/migraphx/instruction_ref.hpp
View file @
264a7647
...
@@ -34,7 +34,7 @@ inline namespace MIGRAPHX_INLINE_NS {
...
@@ -34,7 +34,7 @@ inline namespace MIGRAPHX_INLINE_NS {
struct
instruction
;
struct
instruction
;
using
instruction_ref
=
std
::
list
<
instruction
>::
iterator
;
using
instruction_ref
=
std
::
list
<
instruction
>::
iterator
;
migraphx
::
instruction
*
as_address
(
const
instruction_ref
&
ins
)
noexcept
;
MIGRAPHX_EXPORT
migraphx
::
instruction
*
as_address
(
const
instruction_ref
&
ins
)
noexcept
;
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace migraphx
}
// namespace migraphx
...
...
src/include/migraphx/json.hpp
View file @
264a7647
...
@@ -31,10 +31,10 @@
...
@@ -31,10 +31,10 @@
namespace
migraphx
{
namespace
migraphx
{
inline
namespace
MIGRAPHX_INLINE_NS
{
inline
namespace
MIGRAPHX_INLINE_NS
{
std
::
string
to_pretty_json_string
(
const
value
&
val
,
std
::
size_t
indent
=
4
);
MIGRAPHX_EXPORT
std
::
string
to_pretty_json_string
(
const
value
&
val
,
std
::
size_t
indent
=
4
);
std
::
string
to_json_string
(
const
value
&
val
);
MIGRAPHX_EXPORT
std
::
string
to_json_string
(
const
value
&
val
);
value
from_json_string
(
const
std
::
string
&
str
);
MIGRAPHX_EXPORT
value
from_json_string
(
const
std
::
string
&
str
);
value
from_json_string
(
const
char
*
str
,
std
::
size_t
size
);
MIGRAPHX_EXPORT
value
from_json_string
(
const
char
*
str
,
std
::
size_t
size
);
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace migraphx
}
// namespace migraphx
...
...
src/include/migraphx/layout_nhwc.hpp
View file @
264a7647
...
@@ -36,7 +36,7 @@ struct module_pass_manager;
...
@@ -36,7 +36,7 @@ struct module_pass_manager;
/**
/**
* Transform convolutions to nhwc
* Transform convolutions to nhwc
*/
*/
struct
layout_nhwc
struct
MIGRAPHX_EXPORT
layout_nhwc
{
{
std
::
string
name
()
const
{
return
"layout_nhwc"
;
}
std
::
string
name
()
const
{
return
"layout_nhwc"
;
}
void
apply
(
module_pass_manager
&
mpm
)
const
;
void
apply
(
module_pass_manager
&
mpm
)
const
;
...
...
src/include/migraphx/literal.hpp
View file @
264a7647
...
@@ -147,8 +147,8 @@ literal transform(literal l1, literal l2, F f)
...
@@ -147,8 +147,8 @@ literal transform(literal l1, literal l2, F f)
return
result
;
return
result
;
}
}
void
migraphx_to_value
(
value
&
v
,
const
literal
&
l
);
MIGRAPHX_EXPORT
void
migraphx_to_value
(
value
&
v
,
const
literal
&
l
);
void
migraphx_from_value
(
const
value
&
v
,
literal
&
l
);
MIGRAPHX_EXPORT
void
migraphx_from_value
(
const
value
&
v
,
literal
&
l
);
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace migraphx
}
// namespace migraphx
...
...
src/include/migraphx/load_save.hpp
View file @
264a7647
...
@@ -36,15 +36,18 @@ struct file_options
...
@@ -36,15 +36,18 @@ struct file_options
std
::
string
format
=
"msgpack"
;
std
::
string
format
=
"msgpack"
;
};
};
program
load
(
const
std
::
string
&
filename
,
const
file_options
&
options
=
file_options
{});
MIGRAPHX_EXPORT
program
load
(
const
std
::
string
&
filename
,
program
load_buffer
(
const
std
::
vector
<
char
>&
buffer
,
const
file_options
&
options
=
file_options
{});
const
file_options
&
options
=
file_options
{});
program
MIGRAPHX_EXPORT
program
load_buffer
(
const
std
::
vector
<
char
>&
buffer
,
load_buffer
(
const
char
*
buffer
,
std
::
size_t
size
,
const
file_options
&
options
=
file_options
{});
const
file_options
&
options
=
file_options
{});
MIGRAPHX_EXPORT
program
load_buffer
(
const
char
*
buffer
,
std
::
size_t
size
,
const
file_options
&
options
=
file_options
{});
void
save
(
const
program
&
p
,
MIGRAPHX_EXPORT
void
const
std
::
string
&
filename
,
save
(
const
program
&
p
,
const
std
::
string
&
filename
,
const
file_options
&
options
=
file_options
{});
const
file_options
&
options
=
file_options
{});
MIGRAPHX_EXPORT
std
::
vector
<
char
>
save_buffer
(
const
program
&
p
,
std
::
vector
<
char
>
save_buffer
(
const
program
&
p
,
const
file_options
&
options
=
file_options
{});
const
file_options
&
options
=
file_options
{});
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace migraphx
}
// namespace migraphx
...
...
src/include/migraphx/make_op.hpp
View file @
264a7647
...
@@ -33,10 +33,10 @@
...
@@ -33,10 +33,10 @@
namespace
migraphx
{
namespace
migraphx
{
inline
namespace
MIGRAPHX_INLINE_NS
{
inline
namespace
MIGRAPHX_INLINE_NS
{
operation
make_op
(
const
std
::
string
&
name
);
MIGRAPHX_EXPORT
operation
make_op
(
const
std
::
string
&
name
);
operation
make_op
(
const
std
::
string
&
name
,
MIGRAPHX_EXPORT
operation
make_op
(
const
std
::
string
&
name
,
const
std
::
initializer_list
<
std
::
pair
<
std
::
string
,
value
>>&
v
);
const
std
::
initializer_list
<
std
::
pair
<
std
::
string
,
value
>>&
v
);
operation
make_op_from_value
(
const
std
::
string
&
name
,
const
value
&
v
);
MIGRAPHX_EXPORT
operation
make_op_from_value
(
const
std
::
string
&
name
,
const
value
&
v
);
// A template overload is added for migraphx::value so the initializer_list
// A template overload is added for migraphx::value so the initializer_list
// cannot be passed in directly. This is to enforce at compile-time that all
// cannot be passed in directly. This is to enforce at compile-time that all
...
@@ -48,7 +48,7 @@ operation make_op(const std::string& name, const Value& v)
...
@@ -48,7 +48,7 @@ operation make_op(const std::string& name, const Value& v)
return
make_op_from_value
(
name
,
v
);
return
make_op_from_value
(
name
,
v
);
}
}
operation
make_json_op
(
const
std
::
string
&
name
,
const
std
::
string
&
s
);
MIGRAPHX_EXPORT
operation
make_json_op
(
const
std
::
string
&
name
,
const
std
::
string
&
s
);
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace migraphx
}
// namespace migraphx
...
...
src/include/migraphx/marker.hpp
View file @
264a7647
...
@@ -46,7 +46,7 @@ inline namespace MIGRAPHX_INLINE_NS {
...
@@ -46,7 +46,7 @@ inline namespace MIGRAPHX_INLINE_NS {
#ifdef TYPE_ERASED_DECLARATION
#ifdef TYPE_ERASED_DECLARATION
// Type-erased interface for:
// Type-erased interface for:
struct
marker
struct
MIGRAPHX_EXPORT
marker
{
{
//
//
void
mark_start
(
instruction_ref
ins_ref
);
void
mark_start
(
instruction_ref
ins_ref
);
...
@@ -80,7 +80,7 @@ struct marker
...
@@ -80,7 +80,7 @@ struct marker
{
{
using
std
::
swap
;
using
std
::
swap
;
auto
*
derived
=
this
->
any_cast
<
PrivateDetailTypeErasedT
>
();
auto
*
derived
=
this
->
any_cast
<
PrivateDetailTypeErasedT
>
();
if
(
derived
and
private_detail_te_handle_mem_var
.
u
nique
()
)
if
(
derived
and
private_detail_te_handle_mem_var
.
u
se_count
()
==
1
)
{
{
*
derived
=
std
::
forward
<
PrivateDetailTypeErasedT
>
(
value
);
*
derived
=
std
::
forward
<
PrivateDetailTypeErasedT
>
(
value
);
}
}
...
@@ -233,7 +233,7 @@ struct marker
...
@@ -233,7 +233,7 @@ struct marker
private_detail_te_handle_base_type
&
private_detail_te_get_handle
()
private_detail_te_handle_base_type
&
private_detail_te_get_handle
()
{
{
assert
(
private_detail_te_handle_mem_var
!=
nullptr
);
assert
(
private_detail_te_handle_mem_var
!=
nullptr
);
if
(
not
private_detail_te_handle_mem_var
.
u
nique
()
)
if
(
private_detail_te_handle_mem_var
.
u
se_count
()
>
1
)
private_detail_te_handle_mem_var
=
private_detail_te_handle_mem_var
->
clone
();
private_detail_te_handle_mem_var
=
private_detail_te_handle_mem_var
->
clone
();
return
*
private_detail_te_handle_mem_var
;
return
*
private_detail_te_handle_mem_var
;
}
}
...
...
src/include/migraphx/memory_coloring.hpp
View file @
264a7647
...
@@ -36,7 +36,7 @@ struct module;
...
@@ -36,7 +36,7 @@ struct module;
* Remove multiple memory allocations using graph coloring to find memory allocations that can be
* Remove multiple memory allocations using graph coloring to find memory allocations that can be
* reused.
* reused.
*/
*/
struct
memory_coloring
struct
MIGRAPHX_EXPORT
memory_coloring
{
{
std
::
string
allocation_op
{};
std
::
string
allocation_op
{};
bool
verify
=
false
;
bool
verify
=
false
;
...
...
src/include/migraphx/module.hpp
View file @
264a7647
...
@@ -52,7 +52,7 @@ using ins_dep_map = std::unordered_map<instruction_ref, std::unordered_set<ins
...
@@ -52,7 +52,7 @@ using ins_dep_map = std::unordered_map<instruction_ref, std::unordered_set<ins
/**
/**
* @brief Stores the instruction stream
* @brief Stores the instruction stream
*/
*/
struct
module
struct
MIGRAPHX_EXPORT
module
{
{
module
(
const
std
::
string
&
name
=
""
);
module
(
const
std
::
string
&
name
=
""
);
...
@@ -189,7 +189,7 @@ struct module
...
@@ -189,7 +189,7 @@ struct module
instruction_ref
validate
()
const
;
instruction_ref
validate
()
const
;
instruction_ref
find_dangling_reference
()
const
;
instruction_ref
find_dangling_reference
()
const
;
void
finalize
(
context
&
c
tx
);
void
finalize
(
std
::
vector
<
context
>
&
c
ontexts
);
void
debug_print
()
const
;
void
debug_print
()
const
;
void
debug_print
(
instruction_ref
ins
)
const
;
void
debug_print
(
instruction_ref
ins
)
const
;
...
@@ -225,8 +225,8 @@ struct module
...
@@ -225,8 +225,8 @@ struct module
module
&
sort
();
module
&
sort
();
ins_dep_map
calc_implicit_deps
()
const
;
ins_dep_map
calc_implicit_deps
()
const
;
friend
std
::
ostream
&
operator
<<
(
std
::
ostream
&
os
,
const
module
&
m
);
MIGRAPHX_EXPORT
friend
std
::
ostream
&
operator
<<
(
std
::
ostream
&
os
,
const
module
&
m
);
friend
bool
operator
==
(
const
module
&
x
,
const
module
&
y
);
MIGRAPHX_EXPORT
friend
bool
operator
==
(
const
module
&
x
,
const
module
&
y
);
friend
bool
operator
!=
(
const
module
&
x
,
const
module
&
y
)
{
return
not
(
x
==
y
);
}
friend
bool
operator
!=
(
const
module
&
x
,
const
module
&
y
)
{
return
not
(
x
==
y
);
}
private:
private:
...
...
src/include/migraphx/msgpack.hpp
View file @
264a7647
...
@@ -31,10 +31,11 @@
...
@@ -31,10 +31,11 @@
namespace
migraphx
{
namespace
migraphx
{
inline
namespace
MIGRAPHX_INLINE_NS
{
inline
namespace
MIGRAPHX_INLINE_NS
{
void
to_msgpack
(
const
value
&
v
,
std
::
function
<
void
(
const
char
*
,
std
::
size_t
)
>
writer
);
MIGRAPHX_EXPORT
void
to_msgpack
(
const
value
&
v
,
std
::
vector
<
char
>
to_msgpack
(
const
value
&
v
);
std
::
function
<
void
(
const
char
*
,
std
::
size_t
)
>
writer
);
value
from_msgpack
(
const
std
::
vector
<
char
>&
buffer
);
MIGRAPHX_EXPORT
std
::
vector
<
char
>
to_msgpack
(
const
value
&
v
);
value
from_msgpack
(
const
char
*
buffer
,
std
::
size_t
size
);
MIGRAPHX_EXPORT
value
from_msgpack
(
const
std
::
vector
<
char
>&
buffer
);
MIGRAPHX_EXPORT
value
from_msgpack
(
const
char
*
buffer
,
std
::
size_t
size
);
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace migraphx
}
// namespace migraphx
...
...
src/include/migraphx/normalize_attributes.hpp
View file @
264a7647
...
@@ -42,7 +42,8 @@ struct select_dependent_type
...
@@ -42,7 +42,8 @@ struct select_dependent_type
template
<
class
T
,
class
...
Ts
>
template
<
class
T
,
class
...
Ts
>
using
dependent_type
=
typename
select_dependent_type
<
T
,
Ts
...
>::
type
;
using
dependent_type
=
typename
select_dependent_type
<
T
,
Ts
...
>::
type
;
bool
normalize_attributes
(
operation
&
op
,
const
std
::
vector
<
std
::
size_t
>&
lens
);
MIGRAPHX_EXPORT
bool
normalize_attributes
(
operation
&
op
,
const
shape
&
input_shape
);
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace migraphx
}
// namespace migraphx
...
...
src/include/migraphx/normalize_ops.hpp
View file @
264a7647
...
@@ -39,7 +39,7 @@ struct module;
...
@@ -39,7 +39,7 @@ struct module;
* Process negative axis attributes of ops
* Process negative axis attributes of ops
*/
*/
struct
normalize_ops
struct
MIGRAPHX_EXPORT
normalize_ops
{
{
std
::
string
name
()
const
{
return
"normalize_ops"
;
}
std
::
string
name
()
const
{
return
"normalize_ops"
;
}
void
apply
(
module
&
m
)
const
;
void
apply
(
module
&
m
)
const
;
...
...
src/include/migraphx/onnx.hpp
View file @
264a7647
...
@@ -26,6 +26,7 @@
...
@@ -26,6 +26,7 @@
#include <migraphx/program.hpp>
#include <migraphx/program.hpp>
#include <migraphx/config.hpp>
#include <migraphx/config.hpp>
#include <migraphx/onnx/export.h>
namespace
migraphx
{
namespace
migraphx
{
inline
namespace
MIGRAPHX_INLINE_NS
{
inline
namespace
MIGRAPHX_INLINE_NS
{
...
@@ -54,15 +55,19 @@ struct onnx_options
...
@@ -54,15 +55,19 @@ struct onnx_options
};
};
/// Create a program from an onnx file
/// Create a program from an onnx file
program
parse_onnx
(
const
std
::
string
&
name
,
const
onnx_options
&
=
onnx_options
{});
MIGRAPHX_ONNX_EXPORT
program
parse_onnx
(
const
std
::
string
&
name
,
const
onnx_options
&
=
onnx_options
{});
/// Create a program from an onnx buffer
/// Create a program from an onnx buffer
program
parse_onnx_buffer
(
const
std
::
string
&
buffer
,
const
onnx_options
&
options
);
MIGRAPHX_ONNX_EXPORT
program
parse_onnx_buffer
(
const
std
::
string
&
buffer
,
const
onnx_options
&
options
);
/// Create a program from an onnx buffer
/// Create a program from an onnx buffer
program
parse_onnx_buffer
(
const
void
*
data
,
std
::
size_t
size
,
const
onnx_options
&
options
);
MIGRAPHX_ONNX_EXPORT
program
parse_onnx_buffer
(
const
void
*
data
,
std
::
size_t
size
,
const
onnx_options
&
options
);
std
::
vector
<
std
::
string
>
get_onnx_operators
();
MIGRAPHX_ONNX_EXPORT
std
::
vector
<
std
::
string
>
get_onnx_operators
();
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace MIGRAPHX_INLINE_NS
}
// namespace migraphx
}
// namespace migraphx
...
...
Prev
1
2
3
4
5
6
7
…
14
Next
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