已合并
fix conv kernel ut #5186
zhengjia_gaffey创建于 5月24日
fix conv kernel ut #5186
已合并
zhengjia_gaffey创建于 5月24日
4 个文件变更+57-94
@@ -15,6 +15,8 @@
15#ifdef __CCE_KT_TEST__15#ifdef __CCE_KT_TEST__
16#include "tikicpulib.h"16#include "tikicpulib.h"
17#include "data_utils.h"17#include "data_utils.h"
18+#include "kernel_ut_data_helper.h"
19+#include "kernel_ut_data_executor.h"
18#include "string.h"20#include "string.h"
19#include <iostream>21#include <iostream>
20#include <string>22#include <string>
@@ -33,6 +35,8 @@ class conv3d_backprop_filter_v2_test : public testing::Test {
33 }35 }
34 static void TearDownTestCase() {36 static void TearDownTestCase() {
35 cout << "conv3d_backprop_filter_v2_test TearDown\n" << endl;37 cout << "conv3d_backprop_filter_v2_test TearDown\n" << endl;
38+ kernel_ut::CleanGeneratedBinFiles("./conv3d_backprop_filter_v2_data");
39+ kernel_ut::CleanGeneratedBinFiles("./conv3d_backprop_filter_v2_fp32_data");
36 }40 }
37};41};
38 42 
@@ -53,14 +57,11 @@ TEST_F(conv3d_backprop_filter_v2_test, conv_stdit_01_bf16) {
53 57 
54 memset(workspace, 0, 16 * 1024 * 1024);58 memset(workspace, 0, 16 * 1024 * 1024);
55 59 
56- system("cp -r ../../../../conv/conv3d_backprop_filter_v2/tests/ut/op_kernel/conv3d_backprop_filter_v2_data ./");60+ kernel_ut::SetupTestEnvironment("conv/conv3d_backprop_filter_v2/tests/ut/op_kernel/conv3d_backprop_filter_v2_data", "conv3d_backprop_filter_v2_data");
57- system("chmod -R 755 ./conv3d_backprop_filter_v2_data/");61+ kernel_ut::RunGenData("./conv3d_backprop_filter_v2_data", {"1", "4", "1152", "1", "16", "16", "1", "32", "32", "1", "2", "2"});
58- system("cd ./conv3d_backprop_filter_v2_data/ && rm -rf ./*bin");62+ kernel_ut::RunGenTiling("./conv3d_backprop_filter_v2_data", "conv_stdit_01_bf16");
59- system("cd ./conv3d_backprop_filter_v2_data/ && python3 gen_data.py 1 4 1152 1 16 16 1 32 32 1 2 2");
60- system("cd ./conv3d_backprop_filter_v2_data/ && python3 gen_tiling.py conv_stdit_01_bf16");
61 63 
62- char * path_ = get_current_dir_name();64+ string path = kernel_ut::GetTestWorkDir();
63- string path(path_);
64 ReadFile(path + "/conv3d_backprop_filter_v2_data/x.bin", shape_x, x, shape_x);65 ReadFile(path + "/conv3d_backprop_filter_v2_data/x.bin", shape_x, x, shape_x);
65 ReadFile(path + "/conv3d_backprop_filter_v2_data/filter_size.bin", shape_filter_size, filter_size, shape_filter_size);66 ReadFile(path + "/conv3d_backprop_filter_v2_data/filter_size.bin", shape_filter_size, filter_size, shape_filter_size);
66 ReadFile(path + "/conv3d_backprop_filter_v2_data/dedy.bin", shape_dedy, dedy, shape_dedy);67 ReadFile(path + "/conv3d_backprop_filter_v2_data/dedy.bin", shape_dedy, dedy, shape_dedy);
@@ -78,7 +79,6 @@ TEST_F(conv3d_backprop_filter_v2_test, conv_stdit_01_bf16) {
78 AscendC::GmFree(y);79 AscendC::GmFree(y);
79 AscendC::GmFree(workspace);80 AscendC::GmFree(workspace);
80 AscendC::GmFree(tiling);81 AscendC::GmFree(tiling);
81- free(path_);
82}82}
83 83 
84TEST_F(conv3d_backprop_filter_v2_test, c256_depthwise) {84TEST_F(conv3d_backprop_filter_v2_test, c256_depthwise) {
@@ -97,14 +97,11 @@ TEST_F(conv3d_backprop_filter_v2_test, c256_depthwise) {
97 97 
98 memset(workspace, 0, 16 * 1024 * 1024);98 memset(workspace, 0, 16 * 1024 * 1024);
99 99 
100- system("cp -r ../../../../conv/conv3d_backprop_filter_v2/tests/ut/op_kernel/conv3d_backprop_filter_v2_data ./");100+ kernel_ut::SetupTestEnvironment("conv/conv3d_backprop_filter_v2/tests/ut/op_kernel/conv3d_backprop_filter_v2_data", "conv3d_backprop_filter_v2_data");
101- system("chmod -R 755 ./conv3d_backprop_filter_v2_data/");101+ kernel_ut::RunGenData("./conv3d_backprop_filter_v2_data", {"1", "256", "256", "9", "64", "64", "11", "64", "64", "3", "3", "3"});
102- system("cd ./conv3d_backprop_filter_v2_data/ && rm -rf ./*bin");102+ kernel_ut::RunGenTiling("./conv3d_backprop_filter_v2_data", "c256_depthwise");
103- system("cd ./conv3d_backprop_filter_v2_data/ && python3 gen_data.py 1 256 256 9 64 64 11 64 64 3 3 3");
104- system("cd ./conv3d_backprop_filter_v2_data/ && python3 gen_tiling.py c256_depthwise");
105 103 
106- char * path_ = get_current_dir_name();104+ string path = kernel_ut::GetTestWorkDir();
107- string path(path_);
108 ReadFile(path + "/conv3d_backprop_filter_v2_data/x.bin", shape_x, x, shape_x);105 ReadFile(path + "/conv3d_backprop_filter_v2_data/x.bin", shape_x, x, shape_x);
109 ReadFile(path + "/conv3d_backprop_filter_v2_data/filter_size.bin", shape_filter_size, filter_size, shape_filter_size);106 ReadFile(path + "/conv3d_backprop_filter_v2_data/filter_size.bin", shape_filter_size, filter_size, shape_filter_size);
110 ReadFile(path + "/conv3d_backprop_filter_v2_data/dedy.bin", shape_dedy, dedy, shape_dedy);107 ReadFile(path + "/conv3d_backprop_filter_v2_data/dedy.bin", shape_dedy, dedy, shape_dedy);
@@ -122,7 +119,6 @@ TEST_F(conv3d_backprop_filter_v2_test, c256_depthwise) {
122 AscendC::GmFree(y);119 AscendC::GmFree(y);
123 AscendC::GmFree(workspace);120 AscendC::GmFree(workspace);
124 AscendC::GmFree(tiling);121 AscendC::GmFree(tiling);
125- free(path_);
126}122}
127 123 
128TEST_F(conv3d_backprop_filter_v2_test, conv_net_ID_03_b16) {124TEST_F(conv3d_backprop_filter_v2_test, conv_net_ID_03_b16) {
@@ -141,14 +137,11 @@ TEST_F(conv3d_backprop_filter_v2_test, conv_net_ID_03_b16) {
141 137 
142 memset(workspace, 0, 16 * 1024 * 1024);138 memset(workspace, 0, 16 * 1024 * 1024);
143 139 
144- system("cp -r ../../../../conv/conv3d_backprop_filter_v2/tests/ut/op_kernel/conv3d_backprop_filter_v2_data ./");140+ kernel_ut::SetupTestEnvironment("conv/conv3d_backprop_filter_v2/tests/ut/op_kernel/conv3d_backprop_filter_v2_data", "conv3d_backprop_filter_v2_data");
145- system("chmod -R 755 ./conv3d_backprop_filter_v2_data/");141+ kernel_ut::RunGenData("./conv3d_backprop_filter_v2_data", {"4", "256", "1364", "4", "64", "64", "4", "64", "64", "1", "1", "1"});
146- system("cd ./conv3d_backprop_filter_v2_data/ && rm -rf ./*bin");142+ kernel_ut::RunGenTiling("./conv3d_backprop_filter_v2_data", "conv_net_ID_03_b16");
147- system("cd ./conv3d_backprop_filter_v2_data/ && python3 gen_data.py 4 256 1364 4 64 64 4 64 64 1 1 1");
148- system("cd ./conv3d_backprop_filter_v2_data/ && python3 gen_tiling.py conv_net_ID_03_b16");
149 143 
150- char * path_ = get_current_dir_name();144+ string path = kernel_ut::GetTestWorkDir();
151- string path(path_);
152 ReadFile(path + "/conv3d_backprop_filter_v2_data/x.bin", shape_x, x, shape_x);145 ReadFile(path + "/conv3d_backprop_filter_v2_data/x.bin", shape_x, x, shape_x);
153 ReadFile(path + "/conv3d_backprop_filter_v2_data/filter_size.bin", shape_filter_size, filter_size, shape_filter_size);146 ReadFile(path + "/conv3d_backprop_filter_v2_data/filter_size.bin", shape_filter_size, filter_size, shape_filter_size);
154 ReadFile(path + "/conv3d_backprop_filter_v2_data/dedy.bin", shape_dedy, dedy, shape_dedy);147 ReadFile(path + "/conv3d_backprop_filter_v2_data/dedy.bin", shape_dedy, dedy, shape_dedy);
@@ -166,7 +159,6 @@ TEST_F(conv3d_backprop_filter_v2_test, conv_net_ID_03_b16) {
166 AscendC::GmFree(y);159 AscendC::GmFree(y);
167 AscendC::GmFree(workspace);160 AscendC::GmFree(workspace);
168 AscendC::GmFree(tiling);161 AscendC::GmFree(tiling);
169- free(path_);
170}162}
171 163 
172TEST_F(conv3d_backprop_filter_v2_test, conv_03_b16) {164TEST_F(conv3d_backprop_filter_v2_test, conv_03_b16) {
@@ -185,14 +177,11 @@ TEST_F(conv3d_backprop_filter_v2_test, conv_03_b16) {
185 177 
186 memset(workspace, 0, 16 * 1024 * 1024);178 memset(workspace, 0, 16 * 1024 * 1024);
187 179 
188- system("cp -r ../../../../conv/conv3d_backprop_filter_v2/tests/ut/op_kernel/conv3d_backprop_filter_v2_data ./");180+ kernel_ut::SetupTestEnvironment("conv/conv3d_backprop_filter_v2/tests/ut/op_kernel/conv3d_backprop_filter_v2_data", "conv3d_backprop_filter_v2_data");
189- system("chmod -R 755 ./conv3d_backprop_filter_v2_data/");181+ kernel_ut::RunGenData("./conv3d_backprop_filter_v2_data", {"1", "256", "128", "17", "128", "128", "17", "128", "128", "1", "1", "1"});
190- system("cd ./conv3d_backprop_filter_v2_data/ && rm -rf ./*bin");182+ kernel_ut::RunGenTiling("./conv3d_backprop_filter_v2_data", "conv_03_b16");
191- system("cd ./conv3d_backprop_filter_v2_data/ && python3 gen_data.py 1 256 128 17 128 128 17 128 128 1 1 1");
192- system("cd ./conv3d_backprop_filter_v2_data/ && python3 gen_tiling.py conv_03_b16");
193 183 
194- char * path_ = get_current_dir_name();184+ string path = kernel_ut::GetTestWorkDir();
195- string path(path_);
196 ReadFile(path + "/conv3d_backprop_filter_v2_data/x.bin", shape_x, x, shape_x);185 ReadFile(path + "/conv3d_backprop_filter_v2_data/x.bin", shape_x, x, shape_x);
197 ReadFile(path + "/conv3d_backprop_filter_v2_data/filter_size.bin", shape_filter_size, filter_size, shape_filter_size);186 ReadFile(path + "/conv3d_backprop_filter_v2_data/filter_size.bin", shape_filter_size, filter_size, shape_filter_size);
198 ReadFile(path + "/conv3d_backprop_filter_v2_data/dedy.bin", shape_dedy, dedy, shape_dedy);187 ReadFile(path + "/conv3d_backprop_filter_v2_data/dedy.bin", shape_dedy, dedy, shape_dedy);
@@ -210,7 +199,6 @@ TEST_F(conv3d_backprop_filter_v2_test, conv_03_b16) {
210 AscendC::GmFree(y);199 AscendC::GmFree(y);
211 AscendC::GmFree(workspace);200 AscendC::GmFree(workspace);
212 AscendC::GmFree(tiling);201 AscendC::GmFree(tiling);
213- free(path_);
214}202}
215 203 
216TEST_F(conv3d_backprop_filter_v2_test, conv_stdit_01_fp32) {204TEST_F(conv3d_backprop_filter_v2_test, conv_stdit_01_fp32) {
@@ -229,14 +217,11 @@ TEST_F(conv3d_backprop_filter_v2_test, conv_stdit_01_fp32) {
229 217 
230 memset(workspace, 0, 16 * 1024 * 1024);218 memset(workspace, 0, 16 * 1024 * 1024);
231 219 
232- system("cp -r ../../../../conv/conv3d_backprop_filter_v2/tests/ut/op_kernel/conv3d_backprop_filter_v2_fp32_data ./");220+ kernel_ut::SetupTestEnvironment("conv/conv3d_backprop_filter_v2/tests/ut/op_kernel/conv3d_backprop_filter_v2_fp32_data", "conv3d_backprop_filter_v2_fp32_data");
233- system("chmod -R 755 ./conv3d_backprop_filter_v2_fp32_data/");221+ kernel_ut::RunGenData("./conv3d_backprop_filter_v2_fp32_data", {"1", "4", "1152", "1", "16", "16", "1", "32", "32", "1", "2", "2"});
234- system("cd ./conv3d_backprop_filter_v2_fp32_data/ && rm -rf ./*bin");222+ kernel_ut::RunGenTiling("./conv3d_backprop_filter_v2_fp32_data", "conv_stdit_01_fp32");
235- system("cd ./conv3d_backprop_filter_v2_fp32_data/ && python3 gen_data.py 1 4 1152 1 16 16 1 32 32 1 2 2");
236- system("cd ./conv3d_backprop_filter_v2_fp32_data/ && python3 gen_tiling.py conv_stdit_01_fp32");
237 223 
238- char * path_ = get_current_dir_name();224+ string path = kernel_ut::GetTestWorkDir();
239- string path(path_);
240 ReadFile(path + "/conv3d_backprop_filter_v2_fp32_data/x.bin", shape_x, x, shape_x);225 ReadFile(path + "/conv3d_backprop_filter_v2_fp32_data/x.bin", shape_x, x, shape_x);
241 ReadFile(path + "/conv3d_backprop_filter_v2_fp32_data/filter_size.bin", shape_filter_size, filter_size, shape_filter_size);226 ReadFile(path + "/conv3d_backprop_filter_v2_fp32_data/filter_size.bin", shape_filter_size, filter_size, shape_filter_size);
242 ReadFile(path + "/conv3d_backprop_filter_v2_fp32_data/dedy.bin", shape_dedy, dedy, shape_dedy);227 ReadFile(path + "/conv3d_backprop_filter_v2_fp32_data/dedy.bin", shape_dedy, dedy, shape_dedy);
@@ -254,5 +239,4 @@ TEST_F(conv3d_backprop_filter_v2_test, conv_stdit_01_fp32) {
254 AscendC::GmFree(y);239 AscendC::GmFree(y);
255 AscendC::GmFree(workspace);240 AscendC::GmFree(workspace);
256 AscendC::GmFree(tiling);241 AscendC::GmFree(tiling);
257- free(path_);
258}242}
@@ -14,6 +14,8 @@
14#ifdef __CCE_KT_TEST__14#ifdef __CCE_KT_TEST__
15#include "tikicpulib.h"15#include "tikicpulib.h"
16#include "data_utils.h"16#include "data_utils.h"
17+#include "kernel_ut_data_helper.h"
18+#include "kernel_ut_data_executor.h"
17#include "string.h"19#include "string.h"
18#include <iostream>20#include <iostream>
19#include <string>21#include <string>
@@ -34,6 +36,7 @@ protected:
34 static void TearDownTestCase()36 static void TearDownTestCase()
35 {37 {
36 cout << "conv3d_backprop_input_v2_test TearDown\n" << endl;38 cout << "conv3d_backprop_input_v2_test TearDown\n" << endl;
39+ kernel_ut::CleanGeneratedBinFiles("./conv3d_backprop_input_v2_data");
37 }40 }
38};41};
39 42 
@@ -54,14 +57,11 @@ TEST_F(conv3d_backprop_input_v2_test, test_case_1)
54 57 
55 memset(workspace, 0, 16 * 1024 * 1024);58 memset(workspace, 0, 16 * 1024 * 1024);
56 59 
57- system("cp -r ../../../../conv/conv3d_backprop_input_v2/tests/ut/op_kernel/conv3d_backprop_input_v2_data ./");60+ kernel_ut::SetupTestEnvironment("conv/conv3d_backprop_input_v2/tests/ut/op_kernel/conv3d_backprop_input_v2_data", "conv3d_backprop_input_v2_data");
58- system("chmod -R 755 ./conv3d_backprop_input_v2_data/");61+ kernel_ut::RunGenData("./conv3d_backprop_input_v2_data", {"1", "512", "512", "5", "32", "32", "5", "32", "32", "1", "1", "1"});
59- system("cd ./conv3d_backprop_input_v2_data/ && rm -rf ./*bin");62+ kernel_ut::RunGenTiling("./conv3d_backprop_input_v2_data", "test_case_1");
60- system("cd ./conv3d_backprop_input_v2_data/ && python3 gen_data.py 1 512 512 5 32 32 5 32 32 1 1 1");
61- system("cd ./conv3d_backprop_input_v2_data/ && python3 gen_tiling.py test_case_1");
62 63 
63- char* path_ = get_current_dir_name();64+ string path = kernel_ut::GetTestWorkDir();
64- string path(path_);
65 ReadFile(path + "/conv3d_backprop_input_v2_data/input_size.bin", input_shape_size, input_shape, input_shape_size);65 ReadFile(path + "/conv3d_backprop_input_v2_data/input_size.bin", input_shape_size, input_shape, input_shape_size);
66 ReadFile(path + "/conv3d_backprop_input_v2_data/filter.bin", filter_size, filter, filter_size);66 ReadFile(path + "/conv3d_backprop_input_v2_data/filter.bin", filter_size, filter, filter_size);
67 ReadFile(path + "/conv3d_backprop_input_v2_data/dedy.bin", dedy_size, dedy, dedy_size);67 ReadFile(path + "/conv3d_backprop_input_v2_data/dedy.bin", dedy_size, dedy, dedy_size);
@@ -113,7 +113,6 @@ TEST_F(conv3d_backprop_input_v2_test, test_case_1)
113 AscendC::GmFree(y);113 AscendC::GmFree(y);
114 AscendC::GmFree(workspace);114 AscendC::GmFree(workspace);
115 AscendC::GmFree(tiling);115 AscendC::GmFree(tiling);
116- free(path_);
117}116}
118 117 
119TEST_F(conv3d_backprop_input_v2_test, test_case_2)118TEST_F(conv3d_backprop_input_v2_test, test_case_2)
@@ -133,14 +132,11 @@ TEST_F(conv3d_backprop_input_v2_test, test_case_2)
133 132 
134 memset(workspace, 0, 16 * 1024 * 1024);133 memset(workspace, 0, 16 * 1024 * 1024);
135 134 
136- system("cp -r ../../../../conv/conv3d_backprop_input_v2/tests/ut/op_kernel/conv3d_backprop_input_v2_data ./");135+ kernel_ut::SetupTestEnvironment("conv/conv3d_backprop_input_v2/tests/ut/op_kernel/conv3d_backprop_input_v2_data", "conv3d_backprop_input_v2_data");
137- system("chmod -R 755 ./conv3d_backprop_input_v2_data/");136+ kernel_ut::RunGenData("./conv3d_backprop_input_v2_data", {"1", "512", "512", "5", "32", "32", "5", "32", "32", "1", "1", "1"});
138- system("cd ./conv3d_backprop_input_v2_data/ && rm -rf ./*bin");137+ kernel_ut::RunGenTiling("./conv3d_backprop_input_v2_data", "test_case_2");
139- system("cd ./conv3d_backprop_input_v2_data/ && python3 gen_data.py 1 512 512 5 32 32 5 32 32 1 1 1");
140- system("cd ./conv3d_backprop_input_v2_data/ && python3 gen_tiling.py test_case_2");
141 138 
142- char* path_ = get_current_dir_name();139+ string path = kernel_ut::GetTestWorkDir();
143- string path(path_);
144 ReadFile(path + "/conv3d_backprop_input_v2_data/input_size.bin", input_shape_size, input_shape, input_shape_size);140 ReadFile(path + "/conv3d_backprop_input_v2_data/input_size.bin", input_shape_size, input_shape, input_shape_size);
145 ReadFile(path + "/conv3d_backprop_input_v2_data/filter.bin", filter_size, filter, filter_size);141 ReadFile(path + "/conv3d_backprop_input_v2_data/filter.bin", filter_size, filter, filter_size);
146 ReadFile(path + "/conv3d_backprop_input_v2_data/dedy.bin", dedy_size, dedy, dedy_size);142 ReadFile(path + "/conv3d_backprop_input_v2_data/dedy.bin", dedy_size, dedy, dedy_size);
@@ -192,7 +188,6 @@ TEST_F(conv3d_backprop_input_v2_test, test_case_2)
192 AscendC::GmFree(y);188 AscendC::GmFree(y);
193 AscendC::GmFree(workspace);189 AscendC::GmFree(workspace);
194 AscendC::GmFree(tiling);190 AscendC::GmFree(tiling);
195- free(path_);
196}191}
197 192 
198TEST_F(conv3d_backprop_input_v2_test, test_case_3)193TEST_F(conv3d_backprop_input_v2_test, test_case_3)
@@ -212,16 +207,11 @@ TEST_F(conv3d_backprop_input_v2_test, test_case_3)
212 207 
213 memset(workspace, 0, 16 * 1024 * 1024);208 memset(workspace, 0, 16 * 1024 * 1024);
214 209 
215- system(210+ kernel_ut::SetupTestEnvironment("conv/conv3d_backprop_input_v2/tests/ut/op_kernel/conv3d_backprop_input_v2_data", "conv3d_backprop_input_v2_data");
216- "cp -r "211+ kernel_ut::RunGenData("./conv3d_backprop_input_v2_data", {"2", "256", "256", "1", "4", "4", "1", "8", "8", "1", "2", "2"});
217- "../../../../conv/conv3d_backprop_input_v2/tests/ut/op_kernel/"212+ kernel_ut::RunGenTiling("./conv3d_backprop_input_v2_data", "test_case_3");
218- "conv3d_backprop_input_v2_data ./");213+ 
219- system("chmod -R 755 ./conv3d_backprop_input_v2_data/");214+ string path = kernel_ut::GetTestWorkDir();
220- system("cd ./conv3d_backprop_input_v2_data/ && rm -rf ./*bin");
221- system("cd ./conv3d_backprop_input_v2_data/ && python3 gen_data.py 2 256 256 1 4 4 1 8 8 1 2 2");
222- system("cd ./conv3d_backprop_input_v2_data/ && python3 gen_tiling.py test_case_3");
223- char* path_ = get_current_dir_name();
224- string path(path_);
225 ReadFile(path + "/conv3d_backprop_input_v2_data/input_size.bin", input_shape_size, input_shape, input_shape_size);215 ReadFile(path + "/conv3d_backprop_input_v2_data/input_size.bin", input_shape_size, input_shape, input_shape_size);
226 ReadFile(path + "/conv3d_backprop_input_v2_data/filter.bin", filter_size, filter, filter_size);216 ReadFile(path + "/conv3d_backprop_input_v2_data/filter.bin", filter_size, filter, filter_size);
227 ReadFile(path + "/conv3d_backprop_input_v2_data/dedy.bin", dedy_size, dedy, dedy_size);217 ReadFile(path + "/conv3d_backprop_input_v2_data/dedy.bin", dedy_size, dedy, dedy_size);
@@ -273,5 +263,4 @@ TEST_F(conv3d_backprop_input_v2_test, test_case_3)
273 AscendC::GmFree(y);263 AscendC::GmFree(y);
274 AscendC::GmFree(workspace);264 AscendC::GmFree(workspace);
275 AscendC::GmFree(tiling);265 AscendC::GmFree(tiling);
276- free(path_);
277}266}
@@ -15,6 +15,8 @@
15#ifdef __CCE_KT_TEST__15#ifdef __CCE_KT_TEST__
16#include "tikicpulib.h"16#include "tikicpulib.h"
17#include "data_utils.h"17#include "data_utils.h"
18+#include "kernel_ut_data_helper.h"
19+#include "kernel_ut_data_executor.h"
18#include "string.h"20#include "string.h"
19#include <iostream>21#include <iostream>
20#include <string>22#include <string>
@@ -33,6 +35,7 @@ class conv3d_transpose_v2_test : public testing::Test {
33 }35 }
34 static void TearDownTestCase() {36 static void TearDownTestCase() {
35 cout << "conv3d_transpose_v2_test TearDown\n" << endl;37 cout << "conv3d_transpose_v2_test TearDown\n" << endl;
38+ kernel_ut::CleanGeneratedBinFiles("./conv3d_transpose_v2_data");
36 }39 }
37};40};
38 41 
@@ -53,14 +56,11 @@ TEST_F(conv3d_transpose_v2_test, test_conv3d_dx_17) {
53 56 
54 memset(workspace, 0, 16 * 1024 * 1024);57 memset(workspace, 0, 16 * 1024 * 1024);
55 58 
56- system("cp -r ../../../../conv/conv3d_transpose_v2/tests/ut/op_kernel/conv3d_transpose_v2_data ./");59+ kernel_ut::SetupTestEnvironment("conv/conv3d_transpose_v2/tests/ut/op_kernel/conv3d_transpose_v2_data", "conv3d_transpose_v2_data");
57- system("chmod -R 755 ./conv3d_transpose_v2_data/");60+ kernel_ut::RunGenData("./conv3d_transpose_v2_data", {"1", "512", "512", "5", "32", "32", "5", "32", "32", "1", "1", "1"});
58- system("cd ./conv3d_transpose_v2_data/ && rm -rf ./*bin");61+ kernel_ut::RunGenTiling("./conv3d_transpose_v2_data", "test_conv3d_dx_17");
59- system("cd ./conv3d_transpose_v2_data/ && python3 gen_data.py 1 512 512 5 32 32 5 32 32 1 1 1");
60- system("cd ./conv3d_transpose_v2_data/ && python3 gen_tiling.py test_conv3d_dx_17");
61 62 
62- char * path_ = get_current_dir_name();63+ string path = kernel_ut::GetTestWorkDir();
63- string path(path_);
64 ReadFile(path + "/conv3d_transpose_v2_data/input_size.bin", input_shape_size, input_shape, input_shape_size);64 ReadFile(path + "/conv3d_transpose_v2_data/input_size.bin", input_shape_size, input_shape, input_shape_size);
65 ReadFile(path + "/conv3d_transpose_v2_data/filter.bin", filter_size, filter, filter_size);65 ReadFile(path + "/conv3d_transpose_v2_data/filter.bin", filter_size, filter, filter_size);
66 ReadFile(path + "/conv3d_transpose_v2_data/x.bin", x_size, x, x_size);66 ReadFile(path + "/conv3d_transpose_v2_data/x.bin", x_size, x, x_size);
@@ -117,7 +117,6 @@ TEST_F(conv3d_transpose_v2_test, test_conv3d_dx_17) {
117 AscendC::GmFree(y);117 AscendC::GmFree(y);
118 AscendC::GmFree(workspace);118 AscendC::GmFree(workspace);
119 AscendC::GmFree(tiling);119 AscendC::GmFree(tiling);
120- free(path_);
121}120}
122 121 
123TEST_F(conv3d_transpose_v2_test, params_conv3d_dx_17_hf32) {122TEST_F(conv3d_transpose_v2_test, params_conv3d_dx_17_hf32) {
@@ -136,14 +135,11 @@ TEST_F(conv3d_transpose_v2_test, params_conv3d_dx_17_hf32) {
136 135 
137 memset(workspace, 0, 16 * 1024 * 1024);136 memset(workspace, 0, 16 * 1024 * 1024);
138 137 
139- system("cp -r ../../../../conv/conv3d_transpose_v2/tests/ut/op_kernel/conv3d_transpose_v2_data ./");138+ kernel_ut::SetupTestEnvironment("conv/conv3d_transpose_v2/tests/ut/op_kernel/conv3d_transpose_v2_data", "conv3d_transpose_v2_data");
140- system("chmod -R 755 ./conv3d_transpose_v2_data/");139+ kernel_ut::RunGenData("./conv3d_transpose_v2_data", {"1", "512", "512", "5", "32", "32", "5", "32", "32", "1", "1", "1"});
141- system("cd ./conv3d_transpose_v2_data/ && rm -rf ./*bin");140+ kernel_ut::RunGenTiling("./conv3d_transpose_v2_data", "params_conv3d_dx_17_hf32");
142- system("cd ./conv3d_transpose_v2_data/ && python3 gen_data.py 1 512 512 5 32 32 5 32 32 1 1 1");
143- system("cd ./conv3d_transpose_v2_data/ && python3 gen_tiling.py params_conv3d_dx_17_hf32");
144 141 
145- char * path_ = get_current_dir_name();142+ string path = kernel_ut::GetTestWorkDir();
146- string path(path_);
147 ReadFile(path + "/conv3d_transpose_v2_data/input_size.bin", input_shape_size, input_shape, input_shape_size);143 ReadFile(path + "/conv3d_transpose_v2_data/input_size.bin", input_shape_size, input_shape, input_shape_size);
148 ReadFile(path + "/conv3d_transpose_v2_data/filter.bin", filter_size, filter, filter_size);144 ReadFile(path + "/conv3d_transpose_v2_data/filter.bin", filter_size, filter, filter_size);
149 ReadFile(path + "/conv3d_transpose_v2_data/x.bin", x_size, x, x_size);145 ReadFile(path + "/conv3d_transpose_v2_data/x.bin", x_size, x, x_size);
@@ -200,7 +196,6 @@ TEST_F(conv3d_transpose_v2_test, params_conv3d_dx_17_hf32) {
200 AscendC::GmFree(y);196 AscendC::GmFree(y);
201 AscendC::GmFree(workspace);197 AscendC::GmFree(workspace);
202 AscendC::GmFree(tiling);198 AscendC::GmFree(tiling);
203- free(path_);
204}199}
205 200 
206TEST_F(conv3d_transpose_v2_test, test_group_1) {201TEST_F(conv3d_transpose_v2_test, test_group_1) {
@@ -219,14 +214,11 @@ TEST_F(conv3d_transpose_v2_test, test_group_1) {
219 214 
220 memset(workspace, 0, 16 * 1024 * 1024);215 memset(workspace, 0, 16 * 1024 * 1024);
221 216 
222- system("cp -r ../../../../conv/conv3d_transpose_v2/tests/ut/op_kernel/conv3d_transpose_v2_data ./");217+ kernel_ut::SetupTestEnvironment("conv/conv3d_transpose_v2/tests/ut/op_kernel/conv3d_transpose_v2_data", "conv3d_transpose_v2_data");
223- system("chmod -R 755 ./conv3d_transpose_v2_data/");218+ kernel_ut::RunGenData("./conv3d_transpose_v2_data", {"2", "256", "256", "1", "4", "4", "1", "8", "8", "1", "2", "2"});
224- system("cd ./conv3d_transpose_v2_data/ && rm -rf ./*bin");219+ kernel_ut::RunGenTiling("./conv3d_transpose_v2_data", "test_group_1");
225- system("cd ./conv3d_transpose_v2_data/ && python3 gen_data.py 2 256 256 1 4 4 1 8 8 1 2 2");
226- system("cd ./conv3d_transpose_v2_data/ && python3 gen_tiling.py test_group_1");
227 220 
228- char * path_ = get_current_dir_name();221+ string path = kernel_ut::GetTestWorkDir();
229- string path(path_);
230 ReadFile(path + "/conv3d_transpose_v2_data/input_size.bin", input_shape_size, input_shape, input_shape_size);222 ReadFile(path + "/conv3d_transpose_v2_data/input_size.bin", input_shape_size, input_shape, input_shape_size);
231 ReadFile(path + "/conv3d_transpose_v2_data/filter.bin", filter_size, filter, filter_size);223 ReadFile(path + "/conv3d_transpose_v2_data/filter.bin", filter_size, filter, filter_size);
232 ReadFile(path + "/conv3d_transpose_v2_data/x.bin", x_size, x, x_size);224 ReadFile(path + "/conv3d_transpose_v2_data/x.bin", x_size, x, x_size);
@@ -283,5 +275,4 @@ TEST_F(conv3d_transpose_v2_test, test_group_1) {
283 AscendC::GmFree(y);275 AscendC::GmFree(y);
284 AscendC::GmFree(workspace);276 AscendC::GmFree(workspace);
285 AscendC::GmFree(tiling);277 AscendC::GmFree(tiling);
286- free(path_);
287}278}
@@ -23,6 +23,7 @@
23#include "tikicpulib.h"23#include "tikicpulib.h"
24#include "conv3d_v2_tiling_def.h"24#include "conv3d_v2_tiling_def.h"
25#include "data_utils.h"25#include "data_utils.h"
26+#include "kernel_ut_data_helper.h"
26 27 
27#ifndef CONV_KERNEL28#ifndef CONV_KERNEL
28#include "../../../op_kernel/conv3d_v2.cpp"29#include "../../../op_kernel/conv3d_v2.cpp"
@@ -112,8 +113,7 @@ void CallSimpleKernel(
112 113 
113 memset(workspace, 0, 16 * 1024 * 1024);114 memset(workspace, 0, 16 * 1024 * 1024);
114 115 
115- char* path_ = get_current_dir_name();116+ std::string path = kernel_ut::GetTestWorkDir();
116- std::string path(path_);
117 117 
118 Ops::NN::Conv3dV2::Conv3DV2TilingData* tilingDataFromBin = reinterpret_cast<Ops::NN::Conv3dV2::Conv3DV2TilingData*>(tiling);118 Ops::NN::Conv3dV2::Conv3DV2TilingData* tilingDataFromBin = reinterpret_cast<Ops::NN::Conv3dV2::Conv3DV2TilingData*>(tiling);
119 119 
@@ -226,7 +226,6 @@ void CallSimpleKernel(
226 AscendC::GmFree(output);226 AscendC::GmFree(output);
227 AscendC::GmFree(workspace);227 AscendC::GmFree(workspace);
228 AscendC::GmFree(tiling);228 AscendC::GmFree(tiling);
229- free(path_);
230}229}
231 230 
232TEST_F(KernelConv3DV2PointWise_test, test_conv3dv2_base)231TEST_F(KernelConv3DV2PointWise_test, test_conv3dv2_base)