From 9eb725e4223d5111df758d0dbad185e9bf445032 Mon Sep 17 00:00:00 2001 From: Illia Silin <98187287+illsilin@users.noreply.github.com> Date: Wed, 26 Oct 2022 09:25:27 -0700 Subject: [PATCH] fix the script parsing the QA results (#495) [ROCm/composable_kernel commit: 0ee3aea16af66fd33282ce7a505533377fb3a74f] --- script/process_perf_data.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/script/process_perf_data.py b/script/process_perf_data.py index de1703cfc3..638e4ef564 100644 --- a/script/process_perf_data.py +++ b/script/process_perf_data.py @@ -81,7 +81,7 @@ def parse_logfile(logfile): StrideA=[] StrideB=[] StrideC=[] - if 'perf_gemm' in logfile: + if 'perf_gemm.log' in logfile: for line in open(logfile): if 'Best Perf' in line: lst=line.split() @@ -120,14 +120,14 @@ def parse_logfile(logfile): res = [x for _,x in sorted(zip(tests,tflops))] #sorted_kernels = [x for _,x in sorted(zip(tests,kernels))] test_list=list(range(1,len(tests)+1)) - #parse conv_fwd performance tests: - elif 'conv_fwd' in logfile: + #parse conv_fwd and conv_bwd performance tests: + elif 'conv_fwd' in logfile or 'conv_bwd_data' in logfile: for line in open(logfile): if 'tflops:' in line: lst=line.split() res.append(lst[1]) #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): if 'Best Perf' in line: lst=line.split() @@ -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_add=pd.DataFrame(data=[test_results],columns=testlist) 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) return 0 @@ -165,7 +165,7 @@ def compare_test_to_baseline(baseline,test,testlist): print("test # ",i,"shows regression by {:.3f}%".format( (float(test[i])-base_list[i])/base_list[i]*100)) 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: print("no regressions found") ave_perf=ave_perf/len(base_list) @@ -248,7 +248,7 @@ def main(): conn = sqlEngine.connect() #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 #post_test_params(test_list,conn) for i in range(1,len(results)+1):