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
composable_kernel
Commits
0ee3aea1
Unverified
Commit
0ee3aea1
authored
Oct 26, 2022
by
Illia Silin
Committed by
GitHub
Oct 26, 2022
Browse files
fix the script parsing the QA results (#495)
parent
dda3a0a1
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
7 additions
and
7 deletions
+7
-7
script/process_perf_data.py
script/process_perf_data.py
+7
-7
No files found.
script/process_perf_data.py
View file @
0ee3aea1
...
@@ -81,7 +81,7 @@ def parse_logfile(logfile):
...
@@ -81,7 +81,7 @@ def parse_logfile(logfile):
StrideA
=
[]
StrideA
=
[]
StrideB
=
[]
StrideB
=
[]
StrideC
=
[]
StrideC
=
[]
if
'perf_gemm'
in
logfile
:
if
'perf_gemm
.log
'
in
logfile
:
for
line
in
open
(
logfile
):
for
line
in
open
(
logfile
):
if
'Best Perf'
in
line
:
if
'Best Perf'
in
line
:
lst
=
line
.
split
()
lst
=
line
.
split
()
...
@@ -120,14 +120,14 @@ def parse_logfile(logfile):
...
@@ -120,14 +120,14 @@ def parse_logfile(logfile):
res
=
[
x
for
_
,
x
in
sorted
(
zip
(
tests
,
tflops
))]
res
=
[
x
for
_
,
x
in
sorted
(
zip
(
tests
,
tflops
))]
#sorted_kernels = [x for _,x in sorted(zip(tests,kernels))]
#sorted_kernels = [x for _,x in sorted(zip(tests,kernels))]
test_list
=
list
(
range
(
1
,
len
(
tests
)
+
1
))
test_list
=
list
(
range
(
1
,
len
(
tests
)
+
1
))
#parse conv_fwd performance tests:
#parse conv_fwd
and conv_bwd
performance tests:
elif
'conv_fwd'
in
logfile
:
elif
'conv_fwd'
in
logfile
or
'conv_bwd_data'
in
logfile
:
for
line
in
open
(
logfile
):
for
line
in
open
(
logfile
):
if
'tflops:'
in
line
:
if
'tflops:'
in
line
:
lst
=
line
.
split
()
lst
=
line
.
split
()
res
.
append
(
lst
[
1
])
res
.
append
(
lst
[
1
])
#parse all other performance tests:
#parse all other performance tests:
elif
'resnet50'
in
logfile
or
'batched_gemm'
in
logfile
or
'grouped_gemm'
in
logfile
or
'conv_bwd_data'
in
logfile
or
'gemm_bilinear'
in
logfile
or
'reduction'
in
logfile
:
elif
'resnet50'
in
logfile
or
'batched_gemm'
in
logfile
or
'grouped_gemm'
in
logfile
or
'gemm_bilinear'
in
logfile
or
'reduction'
in
logfile
:
for
line
in
open
(
logfile
):
for
line
in
open
(
logfile
):
if
'Best Perf'
in
line
:
if
'Best Perf'
in
line
:
lst
=
line
.
split
()
lst
=
line
.
split
()
...
@@ -149,7 +149,7 @@ def store_new_test_result(table_name, test_results, testlist, branch_name, node_
...
@@ -149,7 +149,7 @@ def store_new_test_result(table_name, test_results, testlist, branch_name, node_
df
=
pd
.
DataFrame
(
data
=
[
params
],
columns
=
[
'Branch_ID'
,
'Node_ID'
,
'GPU_arch'
,
'Compute Units'
,
'ROCM_version'
,
'HIP_version'
,
'Environment'
,
'Datetime'
])
df
=
pd
.
DataFrame
(
data
=
[
params
],
columns
=
[
'Branch_ID'
,
'Node_ID'
,
'GPU_arch'
,
'Compute Units'
,
'ROCM_version'
,
'HIP_version'
,
'Environment'
,
'Datetime'
])
df_add
=
pd
.
DataFrame
(
data
=
[
test_results
],
columns
=
testlist
)
df_add
=
pd
.
DataFrame
(
data
=
[
test_results
],
columns
=
testlist
)
df
=
pd
.
concat
([
df
,
df_add
],
axis
=
1
)
df
=
pd
.
concat
([
df
,
df_add
],
axis
=
1
)
print
(
"new test results dataframe:"
,
df
)
#
print("new test results dataframe:",df)
df
.
to_sql
(
table_name
,
connection
,
if_exists
=
'append'
,
index
=
False
)
df
.
to_sql
(
table_name
,
connection
,
if_exists
=
'append'
,
index
=
False
)
return
0
return
0
...
@@ -165,7 +165,7 @@ def compare_test_to_baseline(baseline,test,testlist):
...
@@ -165,7 +165,7 @@ def compare_test_to_baseline(baseline,test,testlist):
print
(
"test # "
,
i
,
"shows regression by {:.3f}%"
.
format
(
print
(
"test # "
,
i
,
"shows regression by {:.3f}%"
.
format
(
(
float
(
test
[
i
])
-
base_list
[
i
])
/
base_list
[
i
]
*
100
))
(
float
(
test
[
i
])
-
base_list
[
i
])
/
base_list
[
i
]
*
100
))
regression
=
1
regression
=
1
ave_perf
=
ave_perf
+
float
(
test
[
i
])
/
base_list
[
i
]
if
base_list
[
i
]
>
0
:
ave_perf
=
ave_perf
+
float
(
test
[
i
])
/
base_list
[
i
]
if
regression
==
0
:
if
regression
==
0
:
print
(
"no regressions found"
)
print
(
"no regressions found"
)
ave_perf
=
ave_perf
/
len
(
base_list
)
ave_perf
=
ave_perf
/
len
(
base_list
)
...
@@ -248,7 +248,7 @@ def main():
...
@@ -248,7 +248,7 @@ def main():
conn
=
sqlEngine
.
connect
()
conn
=
sqlEngine
.
connect
()
#save gemm performance tests:
#save gemm performance tests:
if
'perf_gemm'
in
filename
:
if
'perf_gemm
.log
'
in
filename
:
#write the ck_gemm_test_params table only needed once the test set changes
#write the ck_gemm_test_params table only needed once the test set changes
#post_test_params(test_list,conn)
#post_test_params(test_list,conn)
for
i
in
range
(
1
,
len
(
results
)
+
1
):
for
i
in
range
(
1
,
len
(
results
)
+
1
):
...
...
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