Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
gaoqiong
MIGraphX
Commits
0fac10ec
Commit
0fac10ec
authored
Nov 06, 2018
by
Paul
Browse files
Update tests
parent
588646f2
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
142 additions
and
0 deletions
+142
-0
test/memory_coloring_test.cpp
test/memory_coloring_test.cpp
+142
-0
No files found.
test/memory_coloring_test.cpp
View file @
0fac10ec
...
@@ -463,6 +463,141 @@ void test31()
...
@@ -463,6 +463,141 @@ void test31()
CHECK
(
no_allocate
(
p
));
CHECK
(
no_allocate
(
p
));
}
}
void
test32
()
{
migraph
::
program
p
;
auto
a1
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
8
}});
auto
a2
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
40
}});
auto
a3
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
40
}});
auto
p1
=
p
.
add_instruction
(
pass_op
{},
a2
,
a1
,
a3
);
auto
a5
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
40
}});
p
.
add_instruction
(
pass_op
{},
a5
,
p1
);
p
.
compile
(
memory_coloring_target
{});
CHECK
(
p
.
get_parameter_shape
(
"scratch"
).
bytes
()
==
480
);
CHECK
(
no_allocate
(
p
));
}
void
test33
()
{
migraph
::
program
p
;
auto
a1
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
8
}});
auto
a2
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
8
}});
auto
a3
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
8
}});
auto
p1
=
p
.
add_instruction
(
pass_op
{},
a2
,
a1
,
a3
);
auto
a5
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
40
}});
p
.
add_instruction
(
pass_op
{},
a5
,
p1
);
p
.
compile
(
memory_coloring_target
{});
CHECK
(
p
.
get_parameter_shape
(
"scratch"
).
bytes
()
==
224
);
CHECK
(
no_allocate
(
p
));
}
void
test34
()
{
migraph
::
program
p
;
auto
a1
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
40
}});
auto
a2
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
40
}});
auto
a3
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
40
}});
auto
p1
=
p
.
add_instruction
(
pass_op
{},
a2
,
a1
,
a3
);
auto
a5
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
8
}});
p
.
add_instruction
(
pass_op
{},
a5
,
p1
);
p
.
compile
(
memory_coloring_target
{});
CHECK
(
p
.
get_parameter_shape
(
"scratch"
).
bytes
()
==
480
);
CHECK
(
no_allocate
(
p
));
}
void
test35
()
{
migraph
::
program
p
;
auto
a1
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
40
}});
auto
a2
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
8
}});
auto
a3
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
8
}});
auto
p1
=
p
.
add_instruction
(
pass_op
{},
a2
,
a1
,
a3
);
auto
a5
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
8
}});
p
.
add_instruction
(
pass_op
{},
a5
,
p1
);
p
.
compile
(
memory_coloring_target
{});
CHECK
(
p
.
get_parameter_shape
(
"scratch"
).
bytes
()
==
224
);
CHECK
(
no_allocate
(
p
));
}
void
test36
()
{
migraph
::
program
p
;
auto
output
=
p
.
add_parameter
(
"output"
,
{
migraph
::
shape
::
float_type
,
{
20
}});
auto
a1
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
0
}});
auto
a2
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
40
}});
auto
p1
=
p
.
add_instruction
(
pass_op
{},
a2
,
a1
);
auto
a3
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
40
}});
auto
p2
=
p
.
add_instruction
(
pass_op
{},
a3
,
p1
);
auto
a4
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
40
}});
auto
p3
=
p
.
add_instruction
(
pass_op
{},
a4
,
p2
);
p
.
add_instruction
(
pass_op
{},
output
,
p3
);
p
.
compile
(
memory_coloring_target
{});
CHECK
(
p
.
get_parameter_shape
(
"scratch"
).
bytes
()
==
480
);
CHECK
(
no_allocate
(
p
));
}
void
test37
()
{
migraph
::
program
p
;
auto
output
=
p
.
add_parameter
(
"output"
,
{
migraph
::
shape
::
float_type
,
{
20
}});
auto
a1
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
4
}});
auto
a2
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
40
}});
auto
p1
=
p
.
add_instruction
(
pass_op
{},
a2
,
a1
);
auto
a3
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
40
}});
auto
p2
=
p
.
add_instruction
(
pass_op
{},
a3
,
p1
);
auto
a4
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
40
}});
auto
p3
=
p
.
add_instruction
(
pass_op
{},
a4
,
p2
);
p
.
add_instruction
(
pass_op
{},
output
,
p3
);
p
.
compile
(
memory_coloring_target
{});
CHECK
(
p
.
get_parameter_shape
(
"scratch"
).
bytes
()
==
480
);
CHECK
(
no_allocate
(
p
));
}
void
test38
()
{
migraph
::
program
p
;
auto
output
=
p
.
add_parameter
(
"output"
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
56
,
56
}});
auto
p29
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
0
}});
auto
p30
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
112
,
112
}});
auto
p31
=
p
.
add_instruction
(
pass_op
{},
p30
,
p29
);
auto
p32
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
112
,
112
}});
auto
p37
=
p
.
add_instruction
(
pass_op
{},
p32
,
p31
);
auto
p38
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
112
,
112
}});
auto
p39
=
p
.
add_instruction
(
pass_op
{},
p38
,
p37
);
auto
p40
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
56
,
56
}});
auto
p41
=
p
.
add_instruction
(
pass_op
{},
p40
,
p39
);
auto
p42
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
0
}});
auto
p43
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
56
,
56
}});
auto
p44
=
p
.
add_instruction
(
pass_op
{},
p43
,
p41
,
p42
);
auto
p45
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
56
,
56
}});
auto
p50
=
p
.
add_instruction
(
pass_op
{},
p45
,
p44
);
auto
p51
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
56
,
56
}});
auto
p52
=
p
.
add_instruction
(
pass_op
{},
p51
,
p50
);
auto
p53
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
0
}});
auto
p54
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
56
,
56
}});
auto
p55
=
p
.
add_instruction
(
pass_op
{},
p54
,
p52
,
p53
);
auto
p56
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
56
,
56
}});
auto
p61
=
p
.
add_instruction
(
pass_op
{},
p56
,
p55
);
auto
p62
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
56
,
56
}});
auto
p63
=
p
.
add_instruction
(
pass_op
{},
p62
,
p61
,
p41
);
auto
p64
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
0
}});
auto
p65
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
56
,
56
}});
auto
p66
=
p
.
add_instruction
(
pass_op
{},
p65
,
p63
,
p64
);
auto
p67
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
56
,
56
}});
auto
p72
=
p
.
add_instruction
(
pass_op
{},
p67
,
p66
);
auto
p73
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
56
,
56
}});
auto
p74
=
p
.
add_instruction
(
pass_op
{},
p73
,
p72
);
auto
p75
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
0
}});
auto
p76
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
56
,
56
}});
auto
p77
=
p
.
add_instruction
(
pass_op
{},
p76
,
p74
,
p75
);
auto
p78
=
add_alloc
(
p
,
{
migraph
::
shape
::
float_type
,
{
1
,
64
,
56
,
56
}});
auto
p83
=
p
.
add_instruction
(
pass_op
{},
p78
,
p77
);
p
.
add_instruction
(
pass_op
{},
output
,
p83
,
p63
);
p
.
compile
(
memory_coloring_target
{});
CHECK
(
p
.
get_parameter_shape
(
"scratch"
).
bytes
()
==
8028160
);
CHECK
(
no_allocate
(
p
));
}
void
literal_test
()
void
literal_test
()
{
{
migraph
::
program
p
;
migraph
::
program
p
;
...
@@ -506,6 +641,13 @@ int main()
...
@@ -506,6 +641,13 @@ int main()
test29
();
test29
();
test30
();
test30
();
test31
();
test31
();
test32
();
test33
();
test34
();
test35
();
test36
();
test37
();
test38
();
literal_test
();
literal_test
();
}
}
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