diff --git a/README.md b/README.md index 7c943bd..b8c9770 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ This branch works on every NVIDIA GPU that supports the dependencies: * CUDA 10.0 * CUDNN 7.603 * TENSORRT 6.01 -* OPENCV 4.1 +* OPENCV 3.4 * yaml-cpp 0.5.2 (sudo apt install libyaml-cpp-dev) ## About OpenCV @@ -60,10 +60,9 @@ Steps needed to do inference on tkDNN with a custom neural network. ## How to export weights -Weights are essential for any network to run inference. For each test a folder organized as follow is needed: +Weights are essential for any network to run inference. For each test a folder organized as follow is needed (in the build folder): ``` test_nn - |---- test_nn.cpp (nn definition in tkDNN) |---- layers/ (folder containing a binary file for each layer with the corresponding wieghts and bias) |---- debug/ (folder containing a binary file for each layer with the corresponding outputs) ``` @@ -119,14 +118,15 @@ rm yolo3_FP32.rt # be sure to delete(or move) old tensorRT files ./test_yolo3 # run the yolo test (is slow) ./demo yolo3_FP32.rt ../demo/yolo_test.mp4 y ``` -In general the demo program takes 3 parameters: +In general the demo program takes 4 parameters: ``` -./demo +./demo ``` where * `````` is the rt file generated by a test * ```<``` is the path to a video file or a camera input * `````` is the type of network. Thee types are currently supported: ```y``` (YOLO family), ```c``` (CenterNet family) and ```m``` (MobileNet-SSD family) +* ``````is the number of classes the network is trained on N.b. By default it is used FP32 inference ![demo](https://user-images.githubusercontent.com/11562617/72547657-540e7800-388d-11ea-83c6-49dfea2a0607.gif) @@ -163,6 +163,11 @@ N.b. The test will be slower: this is due to the INT8 calibration, which may tak N.b. INT8 calibration requires TensorRT version greater than or equal to 6.0 +### BatchSize bigger than 1 +``` +export TKDNN_BATCHSIZE=2 +``` + ## mAP demo To compute mAP, precision, recall and f1score, run the map_demo. diff --git a/include/tkDNN/Network.h b/include/tkDNN/Network.h index eb17ea8..0e8fef8 100644 --- a/include/tkDNN/Network.h +++ b/include/tkDNN/Network.h @@ -62,6 +62,7 @@ public: dataDim_t getOutputDim(); bool fp16, dla, int8; + int maxBatchSize; bool dontLoadWeights; std::string fileImgList; std::string fileLabelList; diff --git a/include/tkDNN/NetworkRT.h b/include/tkDNN/NetworkRT.h index 64deac9..bcb6b89 100644 --- a/include/tkDNN/NetworkRT.h +++ b/include/tkDNN/NetworkRT.h @@ -63,6 +63,7 @@ public: const static int MAX_BUFFERS_RT = 10; void* buffersRT[MAX_BUFFERS_RT]; + dataDim_t buffersDIM[MAX_BUFFERS_RT]; int buf_input_idx, buf_output_idx; dataDim_t input_dim, output_dim; @@ -74,11 +75,25 @@ public: NetworkRT(Network *net, const char *name); virtual ~NetworkRT(); + int getMaxBatchSize() { + if(engineRT != nullptr) + return engineRT->getMaxBatchSize(); + else + return 0; + } + + int getBuffersN() { + if(engineRT != nullptr) + return engineRT->getNbBindings(); + else + return 0; + } + /** Do inferece */ dnnType* infer(dataDim_t &dim, dnnType* data); - void enqueue(); + void enqueue(int batchSize = 1); nvinfer1::ILayer* convert_layer(nvinfer1::ITensor *input, Layer *l); nvinfer1::ILayer* convert_layer(nvinfer1::ITensor *input, Conv2d *l); diff --git a/include/tkDNN/kernels.h b/include/tkDNN/kernels.h index afcc168..16f07d1 100644 --- a/include/tkDNN/kernels.h +++ b/include/tkDNN/kernels.h @@ -41,7 +41,7 @@ void dcnV2CudaForward(cublasStatus_t stat, cublasHandle_t handle, const int stride_h, const int stride_w, const int pad_h, const int pad_w, const int dilation_h, const int dilation_w, - const int deformable_group, + const int deformable_group, const int batch_id, const int in_n, const int in_c, const int in_h, const int in_w, const int out_n, const int out_c, const int out_h, const int out_w, const int dst_dim, cudaStream_t stream = cudaStream_t(0)); diff --git a/include/tkDNN/pluginsRT/ActivationLeakyRT.h b/include/tkDNN/pluginsRT/ActivationLeakyRT.h index 1957e7c..d3f66fb 100644 --- a/include/tkDNN/pluginsRT/ActivationLeakyRT.h +++ b/include/tkDNN/pluginsRT/ActivationLeakyRT.h @@ -42,7 +42,7 @@ public: virtual int enqueue(int batchSize, const void*const * inputs, void** outputs, void* workspace, cudaStream_t stream) override { activationLEAKYForward((dnnType*)reinterpret_cast(inputs[0]), - reinterpret_cast(outputs[0]), size, stream); + reinterpret_cast(outputs[0]), batchSize*size, stream); return 0; } diff --git a/include/tkDNN/pluginsRT/ActivationReLUCeilingRT.h b/include/tkDNN/pluginsRT/ActivationReLUCeilingRT.h index 0074520..286f22e 100644 --- a/include/tkDNN/pluginsRT/ActivationReLUCeilingRT.h +++ b/include/tkDNN/pluginsRT/ActivationReLUCeilingRT.h @@ -41,7 +41,7 @@ public: virtual int enqueue(int batchSize, const void*const * inputs, void** outputs, void* workspace, cudaStream_t stream) override { activationReLUCeilingForward((dnnType*)reinterpret_cast(inputs[0]), - reinterpret_cast(outputs[0]), size, ceiling, stream); + reinterpret_cast(outputs[0]), batchSize*size, ceiling, stream); return 0; } diff --git a/include/tkDNN/pluginsRT/ActivationSigmoidRT.h b/include/tkDNN/pluginsRT/ActivationSigmoidRT.h index 4435f08..1d47136 100644 --- a/include/tkDNN/pluginsRT/ActivationSigmoidRT.h +++ b/include/tkDNN/pluginsRT/ActivationSigmoidRT.h @@ -42,7 +42,7 @@ public: virtual int enqueue(int batchSize, const void*const * inputs, void** outputs, void* workspace, cudaStream_t stream) override { activationSIGMOIDForward((dnnType*)reinterpret_cast(inputs[0]), - reinterpret_cast(outputs[0]), size, stream); + reinterpret_cast(outputs[0]), batchSize*size, stream); return 0; } diff --git a/include/tkDNN/pluginsRT/DeformableConvRT.h b/include/tkDNN/pluginsRT/DeformableConvRT.h index 4804c03..bff6370 100644 --- a/include/tkDNN/pluginsRT/DeformableConvRT.h +++ b/include/tkDNN/pluginsRT/DeformableConvRT.h @@ -86,26 +86,26 @@ public: dnnType *output_conv = (dnnType*)reinterpret_cast(inputs[1]); // split conv2d outputs into offset to mask - checkCuda(cudaMemcpy(offset, output_conv, 2*chunk_dim*sizeof(dnnType), cudaMemcpyDeviceToDevice)); - checkCuda(cudaMemcpy(mask, output_conv + 2*chunk_dim, chunk_dim*sizeof(dnnType), cudaMemcpyDeviceToDevice)); - // kernel sigmoide - activationSIGMOIDForward(mask, mask, chunk_dim); - - // deformable convolution - dcnV2CudaForward(stat, handle, - srcData, data_d, - bias2_d, ones_d1, - offset, mask, - reinterpret_cast(outputs[0]), ones_d2, - kh, kw, - sh, sw, - ph, pw, - 1, 1, - deformableGroup, - i_n, i_c, i_h, i_w, - o_n, o_c, o_h, o_w, - chunk_dim); - + for(int b=0; b(outputs[0]), ones_d2, + kh, kw, + sh, sw, + ph, pw, + 1, 1, + deformableGroup, b, + i_n, i_c, i_h, i_w, + o_n, o_c, o_h, o_w, + chunk_dim); + } return 0; } @@ -185,6 +185,11 @@ public: dnnType * offset; dnnType * mask; dnnType *ones_d2; + // dnnType *input_n; + // dnnType *offset_n; + // dnnType *mask_n; + // dnnType *output_n; + tk::dnn::DeformConv2d *defRT; }; diff --git a/include/tkDNN/pluginsRT/FlattenConcatRT.h b/include/tkDNN/pluginsRT/FlattenConcatRT.h index e6e4eb2..4ebce69 100644 --- a/include/tkDNN/pluginsRT/FlattenConcatRT.h +++ b/include/tkDNN/pluginsRT/FlattenConcatRT.h @@ -47,11 +47,15 @@ public: virtual int enqueue(int batchSize, const void*const * inputs, void** outputs, void* workspace, cudaStream_t stream) override { dnnType *srcData = (dnnType*)reinterpret_cast(inputs[0]); dnnType *dstData = reinterpret_cast(outputs[0]); - checkCuda( cudaMemcpy(dstData, srcData, rows*cols*sizeof(dnnType), cudaMemcpyDeviceToDevice)); - - float const alpha(1.0); - float const beta(0.0); - checkERROR( cublasSgeam( handle, CUBLAS_OP_T, CUBLAS_OP_N, rows, cols, &alpha, srcData, cols, &beta, srcData, rows, dstData, rows )); + checkCuda( cudaMemcpyAsync(dstData, srcData, batchSize*rows*cols*sizeof(dnnType), cudaMemcpyDeviceToDevice, stream)); + + checkERROR( cublasSetStream(handle, stream) ); + for(int i=0; in<<" "<c<<" "<h<<" "<w<<" "<stride_H<<" "<stride_W<<" "<winSize<<" "<padding<n<<" "<c<<" "<h<<" "<w<<" "<stride_H<<" "<stride_W<<" "<winSize<<" "<padding<(inputs[0]); dnnType *dstData = reinterpret_cast(outputs[0]); - MaxPoolingForward(srcData, dstData, this->n, this->c, this->h, this->w, this->stride_H, this->stride_W, this->winSize, this->padding); + MaxPoolingForward(srcData, dstData, batchSize, this->c, this->h, this->w, this->stride_H, this->stride_W, this->winSize, this->padding, stream); return 0; } diff --git a/include/tkDNN/pluginsRT/RegionRT.h b/include/tkDNN/pluginsRT/RegionRT.h index 6331525..f0d127e 100644 --- a/include/tkDNN/pluginsRT/RegionRT.h +++ b/include/tkDNN/pluginsRT/RegionRT.h @@ -50,18 +50,18 @@ public: for (int b = 0; b < batchSize; ++b){ for(int n = 0; n < num; ++n){ - int index = entry_index(b, n*w*h, 0, batchSize); + int index = entry_index(b, n*w*h, 0); activationLOGISTICForward(srcData + index, dstData + index, 2*w*h, stream); - index = entry_index(b, n*w*h, coords, batchSize); + index = entry_index(b, n*w*h, coords); activationLOGISTICForward(srcData + index, dstData + index, w*h, stream); } } //softmax start - int index = entry_index(0, 0, coords + 1, batchSize); + int index = entry_index(0, 0, coords + 1); softmaxForward( srcData + index, classes, batchSize*num, - (batchSize*c*h*w)/num, + (c*h*w)/num, w*h, 1, w*h, 1, dstData + index, stream); return 0; @@ -85,10 +85,10 @@ public: int c, h, w; int classes, coords, num; - int entry_index(int batch, int location, int entry, int batchSize) { + int entry_index(int batch, int location, int entry) { int n = location / (w*h); int loc = location % (w*h); - return batch*c*h*w*batchSize + n*w*h*(coords+classes+1) + entry*w*h + loc; + return batch*c*h*w + n*w*h*(coords+classes+1) + entry*w*h + loc; } }; diff --git a/include/tkDNN/pluginsRT/ReshapeRT.h b/include/tkDNN/pluginsRT/ReshapeRT.h index 36c8c63..97030db 100644 --- a/include/tkDNN/pluginsRT/ReshapeRT.h +++ b/include/tkDNN/pluginsRT/ReshapeRT.h @@ -40,7 +40,7 @@ public: dnnType *srcData = (dnnType*)reinterpret_cast(inputs[0]); dnnType *dstData = reinterpret_cast(outputs[0]); - checkCuda( cudaMemcpy(dstData, srcData, c*h*w*sizeof(dnnType), cudaMemcpyDeviceToDevice)); + checkCuda( cudaMemcpyAsync(dstData, srcData, batchSize*c*h*w*sizeof(dnnType), cudaMemcpyDeviceToDevice, stream)); return 0; } diff --git a/include/tkDNN/pluginsRT/RouteRT.h b/include/tkDNN/pluginsRT/RouteRT.h index 9abcd7f..0e94a97 100644 --- a/include/tkDNN/pluginsRT/RouteRT.h +++ b/include/tkDNN/pluginsRT/RouteRT.h @@ -3,6 +3,10 @@ class RouteRT : public IPlugin { + /** + THIS IS NOT USED ANYMORE + */ + public: RouteRT() { } diff --git a/include/tkDNN/pluginsRT/ShortcutRT.h b/include/tkDNN/pluginsRT/ShortcutRT.h index fd2c60d..3eadd3f 100644 --- a/include/tkDNN/pluginsRT/ShortcutRT.h +++ b/include/tkDNN/pluginsRT/ShortcutRT.h @@ -47,7 +47,8 @@ public: dnnType *dstData = reinterpret_cast(outputs[0]); checkCuda( cudaMemcpyAsync(dstData, srcData, batchSize*c*h*w*sizeof(dnnType), cudaMemcpyDeviceToDevice, stream)); - shortcutForward(srcDataBack, dstData, batchSize, c, h, w, 1, batchSize, bc, bh, bw, 1, stream); + for(int b=0; b < batchSize; ++b) + shortcutForward(srcDataBack + b*bc*bh*bw, dstData + b*c*h*w, 1, c, h, w, 1, 1, bc, bh, bw, 1, stream); return 0; } diff --git a/include/tkDNN/pluginsRT/YoloRT.h b/include/tkDNN/pluginsRT/YoloRT.h index a8b3b7d..66b590b 100644 --- a/include/tkDNN/pluginsRT/YoloRT.h +++ b/include/tkDNN/pluginsRT/YoloRT.h @@ -62,10 +62,10 @@ public: for (int b = 0; b < batchSize; ++b){ for(int n = 0; n < n_masks; ++n){ - int index = entry_index(b, n*w*h, 0, batchSize); + int index = entry_index(b, n*w*h, 0); activationLOGISTICForward(srcData + index, dstData + index, 2*w*h, stream); - index = entry_index(b, n*w*h, 4, batchSize); + index = entry_index(b, n*w*h, 4); activationLOGISTICForward(srcData + index, dstData + index, (1+classes)*w*h, stream); } } @@ -109,10 +109,10 @@ public: dnnType *mask; dnnType *bias; - int entry_index(int batch, int location, int entry, int batchSize) { + int entry_index(int batch, int location, int entry) { int n = location / (w*h); int loc = location % (w*h); - return batch*c*h*w*batchSize + n*w*h*(4+classes+1) + entry*w*h + loc; + return batch*c*h*w + n*w*h*(4+classes+1) + entry*w*h + loc; } }; diff --git a/scripts/test_all_tests.sh b/scripts/test_all_tests.sh index d663d01..41b2781 100644 --- a/scripts/test_all_tests.sh +++ b/scripts/test_all_tests.sh @@ -32,6 +32,14 @@ function print_output { out_file=results.log rm $out_file +function test_net { + ./test_$1 &>> $out_file + print_output $? $1 + ./test_rtinference $1*.rt $TKDNN_BATCHSIZE &>> $out_file + print_output $? "batched $1" +} + + modes=( 1 ) # only FP32 # modes=( 1 2 ) # FP32 and FP16 # modes=( 1 2 3 ) # FP32, FP16 and INT8 @@ -57,73 +65,28 @@ do echo -e "${ORANGE}Test INT8${NC}" fi + export TKDNN_BATCHSIZE=2 + echo -e "${ORANGE}Batch $TKDNN_BATCHSIZE ${NC}" + ./test_imuodom &>> $out_file - res_imuodom=$? - print_output $res_imuodom test_imuodom + print_output $? imuodom - ./test_resnet101_cnet &>> $out_file - res_resnet101_cnet=$? - print_output $res_resnet101_cnet test_resnet101_cnet - - ./test_yolo3 &>> $out_file - res_yolo3=$? - print_output $res_yolo3 test_yolo3 - - ./test_yolo3_flir &>> $out_file - res_yolo3_flir=$? - print_output $res_yolo3_flir test_yolo3_flir - - ./test_yolo3_512 &>> $out_file - res_yolo3_512=$? - print_output $res_yolo3_512 test_yolo3_512 - - ./test_yolo3_tiny &>> $out_file - res_yolo3_tiny=$? - print_output $res_yolo3_tiny test_yolo3_tiny - - ./test_csresnext50-panet-spp &>> $out_file - res_csresnext50panetspp=$? - print_output $res_csresnext50panetspp "test_csresnext50-panet-spp" - - ./test_mobilenetv2ssd &>> $out_file - res_mobilenetv2ssd=$? - print_output $res_mobilenetv2ssd test_mobilenetv2ssd - - ./test_yolo3_tiny512 &>> $out_file - res_yolo3_tiny512=$? - print_output $res_yolo3_tiny512 test_yolo3_tiny512 - - ./test_yolo_tiny &>> $out_file - res_yolo_tiny=$? - print_output $res_yolo_tiny test_yolo_tiny - - ./test_mobilenetv2ssd512 &>> $out_file - res_mobilenetv2ssd512=$? - print_output $res_mobilenetv2ssd512 test_mobilenetv2ssd512 - - ./test_mnist &>> $out_file - res_mnist=$? - print_output $res_mnist test_mnist - - ./test_yolo &>> $out_file - res_yolo=$? - print_output $res_yolo test_yolo - - ./test_yolo3_berkeley &>> $out_file - res_yolo3_berkeley=$? - print_output $res_yolo3_berkeley test_yolo3_berkeley - - ./test_yolo_voc &>> $out_file - res_yolo_voc=$? - print_output $res_yolo_voc test_yolo_voc - - ./test_dla34_cnet &>> $out_file - res_dla34_cnet=$? - print_output $res_dla34_cnet test_dla34_cnet - - ./test_yolo3_coco4 &>> $out_file - res_yolo3_coco4=$? - print_output $res_yolo3_coco4 test_yolo3_coco4 + test_net resnet101_cnet + test_net yolo3 + test_net yolo3_flir + test_net yolo3_512 + test_net yolo3_tiny + test_net csresnext50-panet-spp + test_net mobilenetv2ssd + test_net yolo3_tiny512 + test_net yolo_tiny + test_net mobilenetv2ssd512 + test_net mnist + test_net yolo + test_net yolo3_berkeley + test_net yolo_voc + test_net dla34_cnet + test_net yolo3_coco4 done diff --git a/src/DeformConv2d.cpp b/src/DeformConv2d.cpp index 06bba7f..b161a22 100644 --- a/src/DeformConv2d.cpp +++ b/src/DeformConv2d.cpp @@ -102,13 +102,13 @@ dnnType* DeformConv2d::infer(dataDim_t &dim, dnnType* srcData) { dcnV2CudaForward(stat, handle, srcData, this->data_d, this->bias2_d, ones_d1, - offset, mask, + offset, mask, dstData, ones_d2, this->kernelH, this->kernelW, this->strideH, this->strideW, this->paddingH, this->paddingW, 1, 1, - this->deformableGroup, + this->deformableGroup, 0, //batch_id for cudnn is set to 0 (no batch) preconv->input_dim.n, preconv->input_dim.c, preconv->input_dim.h, preconv->input_dim.w, this->output_dim.n, this->output_dim.c, this->output_dim.h, this->output_dim.w, chunk_dim); diff --git a/src/Network.cpp b/src/Network.cpp index 885ec1a..f199fc2 100644 --- a/src/Network.cpp +++ b/src/Network.cpp @@ -34,6 +34,10 @@ Network::Network(dataDim_t input_dim) { int8 = true; } } + maxBatchSize = 1; + if(const char* env_p = std::getenv("TKDNN_BATCHSIZE")) { + maxBatchSize = atoi(env_p); + } if(const char* env_p = std::getenv("TKDNN_CALIB_IMG_PATH")) fileImgList = env_p; diff --git a/src/NetworkRT.cpp b/src/NetworkRT.cpp index d1886be..dc02163 100644 --- a/src/NetworkRT.cpp +++ b/src/NetworkRT.cpp @@ -58,7 +58,7 @@ NetworkRT::NetworkRT(Network *net, const char *name) { dataDim_t dim = net->layers[0]->input_dim; dtRT = DataType::kFLOAT; - builderRT->setMaxBatchSize(1); + builderRT->setMaxBatchSize(net->maxBatchSize); builderRT->setMaxWorkspaceSize(1 << 30); if(net->fp16 && builderRT->platformHasFastFp16()) { @@ -90,8 +90,8 @@ NetworkRT::NetworkRT(Network *net, const char *name) { * Each network is located in a folder with the same name as the network. * If the folder has a different name, the calibration table is saved in build/ folder. */ - std::string calib_table_name = "../tests/"+ net->networkName + "/" + net->networkNameRT.substr(0, net->networkNameRT.find('.')) + "-calibration.table"; - std::string calib_table_path = "../tests/"+ net->networkName; + std::string calib_table_name = net->networkName + "/" + net->networkNameRT.substr(0, net->networkNameRT.find('.')) + "-calibration.table"; + std::string calib_table_path = net->networkName; if(!fileExist((const char *)calib_table_path.c_str())) calib_table_name = "./" + net->networkNameRT.substr(0, net->networkNameRT.find('.')) + "-calibration.table"; @@ -133,6 +133,7 @@ NetworkRT::NetworkRT(Network *net, const char *name) { input->setName("out"); networkRT->markOutput(*input); + std::cout<<"Selected maxBatchSize: "<getMaxBatchSize()<<"\n"; std::cout<<"Building tensorRT cuda engine...\n"; #if NV_TENSORRT_MAJOR >= 6 engineRT = builderRT->buildEngineWithConfig(*networkRT, *configRT); @@ -181,9 +182,11 @@ NetworkRT::NetworkRT(Network *net, const char *name) { // create GPU buffers and a stream for(int i=0; igetNbBindings(); i++) { Dims dim = engineRT->getBindingDimensions(i); - checkCuda(cudaMalloc(&buffersRT[i], dim.d[0]*dim.d[1]*dim.d[2]*sizeof(dnnType))); + buffersDIM[i] = dataDim_t(1, dim.d[0], dim.d[1], dim.d[2]); + std::cout<<"RtBuffer "<getMaxBatchSize()*dim.d[0]*dim.d[1]*dim.d[2]*sizeof(dnnType))); } - checkCuda(cudaMalloc(&output, output_dim.tot()*sizeof(dnnType))); + checkCuda(cudaMalloc(&output, engineRT->getMaxBatchSize()*output_dim.tot()*sizeof(dnnType))); checkCuda(cudaStreamCreate(&stream)); } @@ -192,19 +195,24 @@ NetworkRT::~NetworkRT() { } dnnType* NetworkRT::infer(dataDim_t &dim, dnnType* data) { + int batches = dim.n; + if(batches > getMaxBatchSize()) { + FatalError("input batch size too large"); + } - checkCuda(cudaMemcpyAsync(buffersRT[buf_input_idx], data, input_dim.tot()*sizeof(dnnType), cudaMemcpyDeviceToDevice, stream)); - contextRT->enqueue(1, buffersRT, stream, nullptr); - checkCuda(cudaMemcpyAsync(output, buffersRT[buf_output_idx], output_dim.tot()*sizeof(dnnType), cudaMemcpyDeviceToDevice, stream)); - cudaStreamSynchronize(stream); + checkCuda(cudaMemcpyAsync(buffersRT[buf_input_idx], data, batches*input_dim.tot()*sizeof(dnnType), cudaMemcpyDeviceToDevice, stream)); + contextRT->enqueue(batches, buffersRT, stream, nullptr); + checkCuda(cudaMemcpyAsync(output, buffersRT[buf_output_idx], batches*output_dim.tot()*sizeof(dnnType), cudaMemcpyDeviceToDevice, stream)); + checkCuda(cudaStreamSynchronize(stream)); dim = output_dim; + dim.n = batches; return output; } -void NetworkRT::enqueue() { - contextRT->enqueue(1, buffersRT, stream, nullptr); +void NetworkRT::enqueue(int batchSize) { + contextRT->enqueue(batchSize, buffersRT, stream, nullptr); } ILayer* NetworkRT::convert_layer(ITensor *input, Layer *l) { @@ -320,7 +328,7 @@ ILayer* NetworkRT::convert_layer(ITensor *input, Conv2d *l) { lRT = (ILayer*) lRTconv; Dims d = lRTconv->getOutput(0)->getDimensions(); - std::cout<<"DECONV: "<preconv); checkNULL(preconv); @@ -535,7 +543,7 @@ ILayer* NetworkRT::convert_layer(ITensor *input, DeformConv2d *l) { inputs[0] = input; inputs[1] = preconv->getOutput(0); - std::cout<<"New plugin DEFORMABLE\n"; + //std::cout<<"New plugin DEFORMABLE\n"; IPlugin *plugin = new DeformableConvRT(l->chunk_dim, l->kernelH, l->kernelW, l->strideH, l->strideW, l->paddingH, l->paddingW, l->deformableGroup, l->input_dim.n, l->input_dim.c, l->input_dim.h, l->input_dim.w, l->output_dim.n, l->output_dim.c, l->output_dim.h, l->output_dim.w, l); @@ -562,7 +570,7 @@ ILayer* NetworkRT::convert_layer(ITensor *input, DeformConv2d *l) { Weights power{dtRT, power_b, l->outputs}; Weights shift{dtRT, mean_b, l->outputs}; Weights scale{dtRT, variance_b, l->outputs}; - std::cout<getNbOutputs()<getNbOutputs()<addScale(*lRT->getOutput(0), ScaleMode::kCHANNEL, shift, scale, power); @@ -622,7 +630,7 @@ IPlugin* PluginFactory::createPlugin(const char* layerName, const void* serialDa const char * buf = reinterpret_cast(serialData); std::string name(layerName); - std::cout< #include "tkdnn.h" -const char *input_bin = "../tests/dla34/debug/input.bin"; -const char *conv1_bin = "../tests/dla34/layers/features-init_block-conv1-conv.bin"; -const char *conv2_bin = "../tests/dla34/layers/features-init_block-conv2-conv.bin"; -const char *conv3_bin = "../tests/dla34/layers/features-init_block-conv3-conv.bin"; +const char *input_bin = "dla34/debug/input.bin"; +const char *conv1_bin = "dla34/layers/features-init_block-conv1-conv.bin"; +const char *conv2_bin = "dla34/layers/features-init_block-conv2-conv.bin"; +const char *conv3_bin = "dla34/layers/features-init_block-conv3-conv.bin"; // s - stage, t - tree -const char *s1_t1_conv1_bin = "../tests/dla34/layers/features-stage1-tree1-body-conv1-conv.bin"; -const char *s1_t1_conv2_bin = "../tests/dla34/layers/features-stage1-tree1-body-conv2-conv.bin"; -const char *s1_t1_project = "../tests/dla34/layers/features-stage1-tree1-project_conv-conv.bin"; -const char *s1_t2_conv1_bin = "../tests/dla34/layers/features-stage1-tree2-body-conv1-conv.bin"; -const char *s1_t2_conv2_bin = "../tests/dla34/layers/features-stage1-tree2-body-conv2-conv.bin"; -const char *s1_root_conv1_bin = "../tests/dla34/layers/features-stage1-root-conv-conv.bin"; -const char *s2_t1_t1_conv1_bin = "../tests/dla34/layers/features-stage2-tree1-tree1-body-conv1-conv.bin"; -const char *s2_t1_t1_conv2_bin = "../tests/dla34/layers/features-stage2-tree1-tree1-body-conv2-conv.bin"; -const char *s2_t1_t1_project = "../tests/dla34/layers/features-stage2-tree1-tree1-project_conv-conv.bin"; -const char *s2_t1_t2_conv1_bin = "../tests/dla34/layers/features-stage2-tree1-tree2-body-conv1-conv.bin"; -const char *s2_t1_t2_conv2_bin = "../tests/dla34/layers/features-stage2-tree1-tree2-body-conv2-conv.bin"; -const char *s2_t1_root_conv1_bin = "../tests/dla34/layers/features-stage2-tree1-root-conv-conv.bin"; -const char *s2_t2_t1_conv1_bin = "../tests/dla34/layers/features-stage2-tree2-tree1-body-conv1-conv.bin"; -const char *s2_t2_t1_conv2_bin = "../tests/dla34/layers/features-stage2-tree2-tree1-body-conv2-conv.bin"; -const char *s2_t2_t2_conv1_bin = "../tests/dla34/layers/features-stage2-tree2-tree2-body-conv1-conv.bin"; -const char *s2_t2_t2_conv2_bin = "../tests/dla34/layers/features-stage2-tree2-tree2-body-conv2-conv.bin"; -const char *s2_t2_root_conv1_bin = "../tests/dla34/layers/features-stage2-tree2-root-conv-conv.bin"; -const char *s3_t1_t1_conv1_bin = "../tests/dla34/layers/features-stage3-tree1-tree1-body-conv1-conv.bin"; -const char *s3_t1_t1_conv2_bin = "../tests/dla34/layers/features-stage3-tree1-tree1-body-conv2-conv.bin"; -const char *s3_t1_t1_project = "../tests/dla34/layers/features-stage3-tree1-tree1-project_conv-conv.bin"; -const char *s3_t1_t2_conv1_bin = "../tests/dla34/layers/features-stage3-tree1-tree2-body-conv1-conv.bin"; -const char *s3_t1_t2_conv2_bin = "../tests/dla34/layers/features-stage3-tree1-tree2-body-conv2-conv.bin"; -const char *s3_t1_root_conv1_bin = "../tests/dla34/layers/features-stage3-tree1-root-conv-conv.bin"; -const char *s3_t2_t1_conv1_bin = "../tests/dla34/layers/features-stage3-tree2-tree1-body-conv1-conv.bin"; -const char *s3_t2_t1_conv2_bin = "../tests/dla34/layers/features-stage3-tree2-tree1-body-conv2-conv.bin"; -const char *s3_t2_t2_conv1_bin = "../tests/dla34/layers/features-stage3-tree2-tree2-body-conv1-conv.bin"; -const char *s3_t2_t2_conv2_bin = "../tests/dla34/layers/features-stage3-tree2-tree2-body-conv2-conv.bin"; -const char *s3_t2_root_conv1_bin = "../tests/dla34/layers/features-stage3-tree2-root-conv-conv.bin"; -const char *s4_t1_conv1_bin = "../tests/dla34/layers/features-stage4-tree1-body-conv1-conv.bin"; -const char *s4_t1_conv2_bin = "../tests/dla34/layers/features-stage4-tree1-body-conv2-conv.bin"; -const char *s4_t1_project = "../tests/dla34/layers/features-stage4-tree1-project_conv-conv.bin"; -const char *s4_t2_conv1_bin = "../tests/dla34/layers/features-stage4-tree2-body-conv1-conv.bin"; -const char *s4_t2_conv2_bin = "../tests/dla34/layers/features-stage4-tree2-body-conv2-conv.bin"; -const char *s4_root_conv1_bin = "../tests/dla34/layers/features-stage4-root-conv-conv.bin"; +const char *s1_t1_conv1_bin = "dla34/layers/features-stage1-tree1-body-conv1-conv.bin"; +const char *s1_t1_conv2_bin = "dla34/layers/features-stage1-tree1-body-conv2-conv.bin"; +const char *s1_t1_project = "dla34/layers/features-stage1-tree1-project_conv-conv.bin"; +const char *s1_t2_conv1_bin = "dla34/layers/features-stage1-tree2-body-conv1-conv.bin"; +const char *s1_t2_conv2_bin = "dla34/layers/features-stage1-tree2-body-conv2-conv.bin"; +const char *s1_root_conv1_bin = "dla34/layers/features-stage1-root-conv-conv.bin"; +const char *s2_t1_t1_conv1_bin = "dla34/layers/features-stage2-tree1-tree1-body-conv1-conv.bin"; +const char *s2_t1_t1_conv2_bin = "dla34/layers/features-stage2-tree1-tree1-body-conv2-conv.bin"; +const char *s2_t1_t1_project = "dla34/layers/features-stage2-tree1-tree1-project_conv-conv.bin"; +const char *s2_t1_t2_conv1_bin = "dla34/layers/features-stage2-tree1-tree2-body-conv1-conv.bin"; +const char *s2_t1_t2_conv2_bin = "dla34/layers/features-stage2-tree1-tree2-body-conv2-conv.bin"; +const char *s2_t1_root_conv1_bin = "dla34/layers/features-stage2-tree1-root-conv-conv.bin"; +const char *s2_t2_t1_conv1_bin = "dla34/layers/features-stage2-tree2-tree1-body-conv1-conv.bin"; +const char *s2_t2_t1_conv2_bin = "dla34/layers/features-stage2-tree2-tree1-body-conv2-conv.bin"; +const char *s2_t2_t2_conv1_bin = "dla34/layers/features-stage2-tree2-tree2-body-conv1-conv.bin"; +const char *s2_t2_t2_conv2_bin = "dla34/layers/features-stage2-tree2-tree2-body-conv2-conv.bin"; +const char *s2_t2_root_conv1_bin = "dla34/layers/features-stage2-tree2-root-conv-conv.bin"; +const char *s3_t1_t1_conv1_bin = "dla34/layers/features-stage3-tree1-tree1-body-conv1-conv.bin"; +const char *s3_t1_t1_conv2_bin = "dla34/layers/features-stage3-tree1-tree1-body-conv2-conv.bin"; +const char *s3_t1_t1_project = "dla34/layers/features-stage3-tree1-tree1-project_conv-conv.bin"; +const char *s3_t1_t2_conv1_bin = "dla34/layers/features-stage3-tree1-tree2-body-conv1-conv.bin"; +const char *s3_t1_t2_conv2_bin = "dla34/layers/features-stage3-tree1-tree2-body-conv2-conv.bin"; +const char *s3_t1_root_conv1_bin = "dla34/layers/features-stage3-tree1-root-conv-conv.bin"; +const char *s3_t2_t1_conv1_bin = "dla34/layers/features-stage3-tree2-tree1-body-conv1-conv.bin"; +const char *s3_t2_t1_conv2_bin = "dla34/layers/features-stage3-tree2-tree1-body-conv2-conv.bin"; +const char *s3_t2_t2_conv1_bin = "dla34/layers/features-stage3-tree2-tree2-body-conv1-conv.bin"; +const char *s3_t2_t2_conv2_bin = "dla34/layers/features-stage3-tree2-tree2-body-conv2-conv.bin"; +const char *s3_t2_root_conv1_bin = "dla34/layers/features-stage3-tree2-root-conv-conv.bin"; +const char *s4_t1_conv1_bin = "dla34/layers/features-stage4-tree1-body-conv1-conv.bin"; +const char *s4_t1_conv2_bin = "dla34/layers/features-stage4-tree1-body-conv2-conv.bin"; +const char *s4_t1_project = "dla34/layers/features-stage4-tree1-project_conv-conv.bin"; +const char *s4_t2_conv1_bin = "dla34/layers/features-stage4-tree2-body-conv1-conv.bin"; +const char *s4_t2_conv2_bin = "dla34/layers/features-stage4-tree2-body-conv2-conv.bin"; +const char *s4_root_conv1_bin = "dla34/layers/features-stage4-root-conv-conv.bin"; //final -const char *fc_bin = "../tests/dla34/layers/output.bin"; +const char *fc_bin = "dla34/layers/output.bin"; -const char *output_bin = "../tests/dla34/debug/output.bin"; +const char *output_bin = "dla34/debug/output.bin"; int main() { diff --git a/tests/dla34_cnet/dla34_cnet.cpp b/tests/dla34_cnet/dla34_cnet.cpp index d4d8923..1461094 100644 --- a/tests/dla34_cnet/dla34_cnet.cpp +++ b/tests/dla34_cnet/dla34_cnet.cpp @@ -1,109 +1,109 @@ #include #include "tkdnn.h" -const char *input_bin = "../tests/dla34_cnet/debug/input.bin"; -const char *conv1_bin = "../tests/dla34_cnet/layers/base-base_layer-0.bin"; -const char *conv2_bin = "../tests/dla34_cnet/layers/base-level0-0.bin"; -const char *conv3_bin = "../tests/dla34_cnet/layers/base-level1-0.bin"; +const char *input_bin = "dla34_cnet/debug/input.bin"; +const char *conv1_bin = "dla34_cnet/layers/base-base_layer-0.bin"; +const char *conv2_bin = "dla34_cnet/layers/base-level0-0.bin"; +const char *conv3_bin = "dla34_cnet/layers/base-level1-0.bin"; // s - stage, t - tree -const char *s1_t1_conv1_bin = "../tests/dla34_cnet/layers/base-level2-tree1-conv1.bin"; -const char *s1_t1_conv2_bin = "../tests/dla34_cnet/layers/base-level2-tree1-conv2.bin"; -const char *s1_t1_project = "../tests/dla34_cnet/layers/base-level2-project-0.bin"; -const char *s1_t2_conv1_bin = "../tests/dla34_cnet/layers/base-level2-tree2-conv1.bin"; -const char *s1_t2_conv2_bin = "../tests/dla34_cnet/layers/base-level2-tree2-conv2.bin"; -const char *s1_root_conv1_bin = "../tests/dla34_cnet/layers/base-level2-root-conv.bin"; -const char *s2_t1_t1_conv1_bin = "../tests/dla34_cnet/layers/base-level3-tree1-tree1-conv1.bin"; -const char *s2_t1_t1_conv2_bin = "../tests/dla34_cnet/layers/base-level3-tree1-tree1-conv2.bin"; -const char *s2_t1_t1_project = "../tests/dla34_cnet/layers/base-level3-tree1-project-0.bin"; -const char *s2_t1_t2_conv1_bin = "../tests/dla34_cnet/layers/base-level3-tree1-tree2-conv1.bin"; -const char *s2_t1_t2_conv2_bin = "../tests/dla34_cnet/layers/base-level3-tree1-tree2-conv2.bin"; -const char *s2_t1_root_conv1_bin = "../tests/dla34_cnet/layers/base-level3-tree1-root-conv.bin"; -const char *s2_t2_t1_conv1_bin = "../tests/dla34_cnet/layers/base-level3-tree2-tree1-conv1.bin"; -const char *s2_t2_t1_conv2_bin = "../tests/dla34_cnet/layers/base-level3-tree2-tree1-conv2.bin"; -const char *s2_t2_t2_conv1_bin = "../tests/dla34_cnet/layers/base-level3-tree2-tree2-conv1.bin"; -const char *s2_t2_t2_conv2_bin = "../tests/dla34_cnet/layers/base-level3-tree2-tree2-conv2.bin"; -const char *s2_t2_root_conv1_bin = "../tests/dla34_cnet/layers/base-level3-tree2-root-conv.bin"; -const char *s3_t1_t1_conv1_bin = "../tests/dla34_cnet/layers/base-level4-tree1-tree1-conv1.bin"; -const char *s3_t1_t1_conv2_bin = "../tests/dla34_cnet/layers/base-level4-tree1-tree1-conv2.bin"; -const char *s3_t1_t1_project = "../tests/dla34_cnet/layers/base-level4-tree1-project-0.bin"; -const char *s3_t1_t2_conv1_bin = "../tests/dla34_cnet/layers/base-level4-tree1-tree2-conv1.bin"; -const char *s3_t1_t2_conv2_bin = "../tests/dla34_cnet/layers/base-level4-tree1-tree2-conv2.bin"; -const char *s3_t1_root_conv1_bin = "../tests/dla34_cnet/layers/base-level4-tree1-root-conv.bin"; -const char *s3_t2_t1_conv1_bin = "../tests/dla34_cnet/layers/base-level4-tree2-tree1-conv1.bin"; -const char *s3_t2_t1_conv2_bin = "../tests/dla34_cnet/layers/base-level4-tree2-tree1-conv2.bin"; -const char *s3_t2_t2_conv1_bin = "../tests/dla34_cnet/layers/base-level4-tree2-tree2-conv1.bin"; -const char *s3_t2_t2_conv2_bin = "../tests/dla34_cnet/layers/base-level4-tree2-tree2-conv2.bin"; -const char *s3_t2_root_conv1_bin = "../tests/dla34_cnet/layers/base-level4-tree2-root-conv.bin"; -const char *s4_t1_conv1_bin = "../tests/dla34_cnet/layers/base-level5-tree1-conv1.bin"; -const char *s4_t1_conv2_bin = "../tests/dla34_cnet/layers/base-level5-tree1-conv2.bin"; -const char *s4_t1_project = "../tests/dla34_cnet/layers/base-level5-project-0.bin"; -const char *s4_t2_conv1_bin = "../tests/dla34_cnet/layers/base-level5-tree2-conv1.bin"; -const char *s4_t2_conv2_bin = "../tests/dla34_cnet/layers/base-level5-tree2-conv2.bin"; -const char *s4_root_conv1_bin = "../tests/dla34_cnet/layers/base-level5-root-conv.bin"; +const char *s1_t1_conv1_bin = "dla34_cnet/layers/base-level2-tree1-conv1.bin"; +const char *s1_t1_conv2_bin = "dla34_cnet/layers/base-level2-tree1-conv2.bin"; +const char *s1_t1_project = "dla34_cnet/layers/base-level2-project-0.bin"; +const char *s1_t2_conv1_bin = "dla34_cnet/layers/base-level2-tree2-conv1.bin"; +const char *s1_t2_conv2_bin = "dla34_cnet/layers/base-level2-tree2-conv2.bin"; +const char *s1_root_conv1_bin = "dla34_cnet/layers/base-level2-root-conv.bin"; +const char *s2_t1_t1_conv1_bin = "dla34_cnet/layers/base-level3-tree1-tree1-conv1.bin"; +const char *s2_t1_t1_conv2_bin = "dla34_cnet/layers/base-level3-tree1-tree1-conv2.bin"; +const char *s2_t1_t1_project = "dla34_cnet/layers/base-level3-tree1-project-0.bin"; +const char *s2_t1_t2_conv1_bin = "dla34_cnet/layers/base-level3-tree1-tree2-conv1.bin"; +const char *s2_t1_t2_conv2_bin = "dla34_cnet/layers/base-level3-tree1-tree2-conv2.bin"; +const char *s2_t1_root_conv1_bin = "dla34_cnet/layers/base-level3-tree1-root-conv.bin"; +const char *s2_t2_t1_conv1_bin = "dla34_cnet/layers/base-level3-tree2-tree1-conv1.bin"; +const char *s2_t2_t1_conv2_bin = "dla34_cnet/layers/base-level3-tree2-tree1-conv2.bin"; +const char *s2_t2_t2_conv1_bin = "dla34_cnet/layers/base-level3-tree2-tree2-conv1.bin"; +const char *s2_t2_t2_conv2_bin = "dla34_cnet/layers/base-level3-tree2-tree2-conv2.bin"; +const char *s2_t2_root_conv1_bin = "dla34_cnet/layers/base-level3-tree2-root-conv.bin"; +const char *s3_t1_t1_conv1_bin = "dla34_cnet/layers/base-level4-tree1-tree1-conv1.bin"; +const char *s3_t1_t1_conv2_bin = "dla34_cnet/layers/base-level4-tree1-tree1-conv2.bin"; +const char *s3_t1_t1_project = "dla34_cnet/layers/base-level4-tree1-project-0.bin"; +const char *s3_t1_t2_conv1_bin = "dla34_cnet/layers/base-level4-tree1-tree2-conv1.bin"; +const char *s3_t1_t2_conv2_bin = "dla34_cnet/layers/base-level4-tree1-tree2-conv2.bin"; +const char *s3_t1_root_conv1_bin = "dla34_cnet/layers/base-level4-tree1-root-conv.bin"; +const char *s3_t2_t1_conv1_bin = "dla34_cnet/layers/base-level4-tree2-tree1-conv1.bin"; +const char *s3_t2_t1_conv2_bin = "dla34_cnet/layers/base-level4-tree2-tree1-conv2.bin"; +const char *s3_t2_t2_conv1_bin = "dla34_cnet/layers/base-level4-tree2-tree2-conv1.bin"; +const char *s3_t2_t2_conv2_bin = "dla34_cnet/layers/base-level4-tree2-tree2-conv2.bin"; +const char *s3_t2_root_conv1_bin = "dla34_cnet/layers/base-level4-tree2-root-conv.bin"; +const char *s4_t1_conv1_bin = "dla34_cnet/layers/base-level5-tree1-conv1.bin"; +const char *s4_t1_conv2_bin = "dla34_cnet/layers/base-level5-tree1-conv2.bin"; +const char *s4_t1_project = "dla34_cnet/layers/base-level5-project-0.bin"; +const char *s4_t2_conv1_bin = "dla34_cnet/layers/base-level5-tree2-conv1.bin"; +const char *s4_t2_conv2_bin = "dla34_cnet/layers/base-level5-tree2-conv2.bin"; +const char *s4_root_conv1_bin = "dla34_cnet/layers/base-level5-root-conv.bin"; //final -// const char *fc_bin = "../tests/dla34_cnet/layers/output.bin"; +// const char *fc_bin = "dla34_cnet/layers/output.bin"; -const char *ida_0_p_1_dcn_bin = "../tests/dla34_cnet/layers/dla_up-ida_0-proj_1-conv.bin"; -const char *ida_0_p_1_conv_bin = "../tests/dla34_cnet/layers/dla_up-ida_0-proj_1-conv-conv_offset_mask.bin"; -const char *ida_0_up_1_deconv_bin = "../tests/dla34_cnet/layers/dla_up-ida_0-up_1.bin"; -const char *ida_0_n_1_dcn_bin = "../tests/dla34_cnet/layers/dla_up-ida_0-node_1-conv.bin"; -const char *ida_0_n_1_conv_bin = "../tests/dla34_cnet/layers/dla_up-ida_0-node_1-conv-conv_offset_mask.bin"; +const char *ida_0_p_1_dcn_bin = "dla34_cnet/layers/dla_up-ida_0-proj_1-conv.bin"; +const char *ida_0_p_1_conv_bin = "dla34_cnet/layers/dla_up-ida_0-proj_1-conv-conv_offset_mask.bin"; +const char *ida_0_up_1_deconv_bin = "dla34_cnet/layers/dla_up-ida_0-up_1.bin"; +const char *ida_0_n_1_dcn_bin = "dla34_cnet/layers/dla_up-ida_0-node_1-conv.bin"; +const char *ida_0_n_1_conv_bin = "dla34_cnet/layers/dla_up-ida_0-node_1-conv-conv_offset_mask.bin"; -const char *ida_1_p_1_dcn_bin = "../tests/dla34_cnet/layers/dla_up-ida_1-proj_1-conv.bin"; -const char *ida_1_p_1_conv_bin = "../tests/dla34_cnet/layers/dla_up-ida_1-proj_1-conv-conv_offset_mask.bin"; -const char *ida_1_up_1_deconv_bin = "../tests/dla34_cnet/layers/dla_up-ida_1-up_1.bin"; -const char *ida_1_n_1_dcn_bin = "../tests/dla34_cnet/layers/dla_up-ida_1-node_1-conv.bin"; -const char *ida_1_n_1_conv_bin = "../tests/dla34_cnet/layers/dla_up-ida_1-node_1-conv-conv_offset_mask.bin"; -const char *ida_1_p_2_dcn_bin = "../tests/dla34_cnet/layers/dla_up-ida_1-proj_2-conv.bin"; -const char *ida_1_p_2_conv_bin = "../tests/dla34_cnet/layers/dla_up-ida_1-proj_2-conv-conv_offset_mask.bin"; -const char *ida_1_up_2_deconv_bin = "../tests/dla34_cnet/layers/dla_up-ida_1-up_2.bin"; -const char *ida_1_n_2_dcn_bin = "../tests/dla34_cnet/layers/dla_up-ida_1-node_2-conv.bin"; -const char *ida_1_n_2_conv_bin = "../tests/dla34_cnet/layers/dla_up-ida_1-node_2-conv-conv_offset_mask.bin"; +const char *ida_1_p_1_dcn_bin = "dla34_cnet/layers/dla_up-ida_1-proj_1-conv.bin"; +const char *ida_1_p_1_conv_bin = "dla34_cnet/layers/dla_up-ida_1-proj_1-conv-conv_offset_mask.bin"; +const char *ida_1_up_1_deconv_bin = "dla34_cnet/layers/dla_up-ida_1-up_1.bin"; +const char *ida_1_n_1_dcn_bin = "dla34_cnet/layers/dla_up-ida_1-node_1-conv.bin"; +const char *ida_1_n_1_conv_bin = "dla34_cnet/layers/dla_up-ida_1-node_1-conv-conv_offset_mask.bin"; +const char *ida_1_p_2_dcn_bin = "dla34_cnet/layers/dla_up-ida_1-proj_2-conv.bin"; +const char *ida_1_p_2_conv_bin = "dla34_cnet/layers/dla_up-ida_1-proj_2-conv-conv_offset_mask.bin"; +const char *ida_1_up_2_deconv_bin = "dla34_cnet/layers/dla_up-ida_1-up_2.bin"; +const char *ida_1_n_2_dcn_bin = "dla34_cnet/layers/dla_up-ida_1-node_2-conv.bin"; +const char *ida_1_n_2_conv_bin = "dla34_cnet/layers/dla_up-ida_1-node_2-conv-conv_offset_mask.bin"; -const char *ida_2_p_1_dcn_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-proj_1-conv.bin"; -const char *ida_2_p_1_conv_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-proj_1-conv-conv_offset_mask.bin"; -const char *ida_2_up_1_deconv_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-up_1.bin"; -const char *ida_2_n_1_dcn_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-node_1-conv.bin"; -const char *ida_2_n_1_conv_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-node_1-conv-conv_offset_mask.bin"; -const char *ida_2_p_2_dcn_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-proj_2-conv.bin"; -const char *ida_2_p_2_conv_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-proj_2-conv-conv_offset_mask.bin"; -const char *ida_2_up_2_deconv_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-up_2.bin"; -const char *ida_2_n_2_dcn_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-node_2-conv.bin"; -const char *ida_2_n_2_conv_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-node_2-conv-conv_offset_mask.bin"; -const char *ida_2_p_3_dcn_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-proj_3-conv.bin"; -const char *ida_2_p_3_conv_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-proj_3-conv-conv_offset_mask.bin"; -const char *ida_2_up_3_deconv_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-up_3.bin"; -const char *ida_2_n_3_dcn_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-node_3-conv.bin"; -const char *ida_2_n_3_conv_bin = "../tests/dla34_cnet/layers/dla_up-ida_2-node_3-conv-conv_offset_mask.bin"; +const char *ida_2_p_1_dcn_bin = "dla34_cnet/layers/dla_up-ida_2-proj_1-conv.bin"; +const char *ida_2_p_1_conv_bin = "dla34_cnet/layers/dla_up-ida_2-proj_1-conv-conv_offset_mask.bin"; +const char *ida_2_up_1_deconv_bin = "dla34_cnet/layers/dla_up-ida_2-up_1.bin"; +const char *ida_2_n_1_dcn_bin = "dla34_cnet/layers/dla_up-ida_2-node_1-conv.bin"; +const char *ida_2_n_1_conv_bin = "dla34_cnet/layers/dla_up-ida_2-node_1-conv-conv_offset_mask.bin"; +const char *ida_2_p_2_dcn_bin = "dla34_cnet/layers/dla_up-ida_2-proj_2-conv.bin"; +const char *ida_2_p_2_conv_bin = "dla34_cnet/layers/dla_up-ida_2-proj_2-conv-conv_offset_mask.bin"; +const char *ida_2_up_2_deconv_bin = "dla34_cnet/layers/dla_up-ida_2-up_2.bin"; +const char *ida_2_n_2_dcn_bin = "dla34_cnet/layers/dla_up-ida_2-node_2-conv.bin"; +const char *ida_2_n_2_conv_bin = "dla34_cnet/layers/dla_up-ida_2-node_2-conv-conv_offset_mask.bin"; +const char *ida_2_p_3_dcn_bin = "dla34_cnet/layers/dla_up-ida_2-proj_3-conv.bin"; +const char *ida_2_p_3_conv_bin = "dla34_cnet/layers/dla_up-ida_2-proj_3-conv-conv_offset_mask.bin"; +const char *ida_2_up_3_deconv_bin = "dla34_cnet/layers/dla_up-ida_2-up_3.bin"; +const char *ida_2_n_3_dcn_bin = "dla34_cnet/layers/dla_up-ida_2-node_3-conv.bin"; +const char *ida_2_n_3_conv_bin = "dla34_cnet/layers/dla_up-ida_2-node_3-conv-conv_offset_mask.bin"; -const char *ida_up_p_1_dcn_bin = "../tests/dla34_cnet/layers/ida_up-proj_1-conv.bin"; -const char *ida_up_p_1_conv_bin = "../tests/dla34_cnet/layers/ida_up-proj_1-conv-conv_offset_mask.bin"; -const char *ida_up_up_1_deconv_bin = "../tests/dla34_cnet/layers/ida_up-up_1.bin"; -const char *ida_up_n_1_dcn_bin = "../tests/dla34_cnet/layers/ida_up-node_1-conv.bin"; -const char *ida_up_n_1_conv_bin = "../tests/dla34_cnet/layers/ida_up-node_1-conv-conv_offset_mask.bin"; -const char *ida_up_p_2_dcn_bin = "../tests/dla34_cnet/layers/ida_up-proj_2-conv.bin"; -const char *ida_up_p_2_conv_bin = "../tests/dla34_cnet/layers/ida_up-proj_2-conv-conv_offset_mask.bin"; -const char *ida_up_up_2_deconv_bin = "../tests/dla34_cnet/layers/ida_up-up_2.bin"; -const char *ida_up_n_2_dcn_bin = "../tests/dla34_cnet/layers/ida_up-node_2-conv.bin"; -const char *ida_up_n_2_conv_bin = "../tests/dla34_cnet/layers/ida_up-node_2-conv-conv_offset_mask.bin"; +const char *ida_up_p_1_dcn_bin = "dla34_cnet/layers/ida_up-proj_1-conv.bin"; +const char *ida_up_p_1_conv_bin = "dla34_cnet/layers/ida_up-proj_1-conv-conv_offset_mask.bin"; +const char *ida_up_up_1_deconv_bin = "dla34_cnet/layers/ida_up-up_1.bin"; +const char *ida_up_n_1_dcn_bin = "dla34_cnet/layers/ida_up-node_1-conv.bin"; +const char *ida_up_n_1_conv_bin = "dla34_cnet/layers/ida_up-node_1-conv-conv_offset_mask.bin"; +const char *ida_up_p_2_dcn_bin = "dla34_cnet/layers/ida_up-proj_2-conv.bin"; +const char *ida_up_p_2_conv_bin = "dla34_cnet/layers/ida_up-proj_2-conv-conv_offset_mask.bin"; +const char *ida_up_up_2_deconv_bin = "dla34_cnet/layers/ida_up-up_2.bin"; +const char *ida_up_n_2_dcn_bin = "dla34_cnet/layers/ida_up-node_2-conv.bin"; +const char *ida_up_n_2_conv_bin = "dla34_cnet/layers/ida_up-node_2-conv-conv_offset_mask.bin"; -const char *hm_conv1_bin = "../tests/dla34_cnet/layers/hm-0.bin"; -const char *hm_conv2_bin = "../tests/dla34_cnet/layers/hm-2.bin"; -const char *wh_conv1_bin = "../tests/dla34_cnet/layers/wh-0.bin"; -const char *wh_conv2_bin = "../tests/dla34_cnet/layers/wh-2.bin"; -const char *reg_conv1_bin = "../tests/dla34_cnet/layers/reg-0.bin"; -const char *reg_conv2_bin = "../tests/dla34_cnet/layers/reg-2.bin"; +const char *hm_conv1_bin = "dla34_cnet/layers/hm-0.bin"; +const char *hm_conv2_bin = "dla34_cnet/layers/hm-2.bin"; +const char *wh_conv1_bin = "dla34_cnet/layers/wh-0.bin"; +const char *wh_conv2_bin = "dla34_cnet/layers/wh-2.bin"; +const char *reg_conv1_bin = "dla34_cnet/layers/reg-0.bin"; +const char *reg_conv2_bin = "dla34_cnet/layers/reg-2.bin"; const char *output_bin[]={ -"../tests/dla34_cnet/debug/hm.bin", -"../tests/dla34_cnet/debug/wh.bin", -"../tests/dla34_cnet/debug/reg.bin"}; +"dla34_cnet/debug/hm.bin", +"dla34_cnet/debug/wh.bin", +"dla34_cnet/debug/reg.bin"}; int main() { - downloadWeightsifDoNotExist(input_bin, "../tests/dla34_cnet", "https://cloud.hipert.unimore.it/s/KRZBbCQsKAtQwpZ/download"); + downloadWeightsifDoNotExist(input_bin, "dla34_cnet", "https://cloud.hipert.unimore.it/s/KRZBbCQsKAtQwpZ/download"); // Network layout tk::dnn::dataDim_t dim(1, 3, 512, 512, 1); diff --git a/tests/imuodom/imuodom.cpp b/tests/imuodom/imuodom.cpp index 5c73786..b3d8ce8 100644 --- a/tests/imuodom/imuodom.cpp +++ b/tests/imuodom/imuodom.cpp @@ -1,30 +1,30 @@ #include #include "tkDNN/ImuOdom.h" -const char *i0_bin = "../tests/imuodom/layers/input0.bin"; -const char *i1_bin = "../tests/imuodom/layers/input1.bin"; -const char *i2_bin = "../tests/imuodom/layers/input2.bin"; -const char *o0_bin = "../tests/imuodom/layers/output0.bin"; -const char *o1_bin = "../tests/imuodom/layers/output1.bin"; +const char *i0_bin = "imuodom/layers/input0.bin"; +const char *i1_bin = "imuodom/layers/input1.bin"; +const char *i2_bin = "imuodom/layers/input2.bin"; +const char *o0_bin = "imuodom/layers/output0.bin"; +const char *o1_bin = "imuodom/layers/output1.bin"; -const char *c0_bin = "../tests/imuodom/layers/conv1d_7.bin"; -const char *c1_bin = "../tests/imuodom/layers/conv1d_8.bin"; -const char *c2_bin = "../tests/imuodom/layers/conv1d_9.bin"; -const char *c3_bin = "../tests/imuodom/layers/conv1d_10.bin"; -const char *c4_bin = "../tests/imuodom/layers/conv1d_11.bin"; -const char *c5_bin = "../tests/imuodom/layers/conv1d_12.bin"; -const char *l0_bin = "../tests/imuodom/layers/bidirectional_3.bin"; -const char *l1_bin = "../tests/imuodom/layers/bidirectional_4.bin"; -const char *d0_bin = "../tests/imuodom/layers/dense_3.bin"; -const char *d1_bin = "../tests/imuodom/layers/dense_4.bin"; +const char *c0_bin = "imuodom/layers/conv1d_7.bin"; +const char *c1_bin = "imuodom/layers/conv1d_8.bin"; +const char *c2_bin = "imuodom/layers/conv1d_9.bin"; +const char *c3_bin = "imuodom/layers/conv1d_10.bin"; +const char *c4_bin = "imuodom/layers/conv1d_11.bin"; +const char *c5_bin = "imuodom/layers/conv1d_12.bin"; +const char *l0_bin = "imuodom/layers/bidirectional_3.bin"; +const char *l1_bin = "imuodom/layers/bidirectional_4.bin"; +const char *d0_bin = "imuodom/layers/dense_3.bin"; +const char *d1_bin = "imuodom/layers/dense_4.bin"; int main() { - downloadWeightsifDoNotExist(i0_bin, "../tests/imuodom", "https://cloud.hipert.unimore.it/s/ZAy34K5w2ixED6x/download"); + downloadWeightsifDoNotExist(i0_bin, "imuodom", "https://cloud.hipert.unimore.it/s/ZAy34K5w2ixED6x/download"); tk::dnn::ImuOdom ImuNet; - ImuNet.init("../tests/imuodom/layers/"); + ImuNet.init("imuodom/layers/"); const int N = 10000; //19513; diff --git a/tests/mnist/test_mnist.cpp b/tests/mnist/test_mnist.cpp index 9c2f6e9..5aa39bb 100644 --- a/tests/mnist/test_mnist.cpp +++ b/tests/mnist/test_mnist.cpp @@ -1,16 +1,16 @@ #include #include "tkdnn.h" -const char *input_bin = "../tests/mnist/input.bin"; -const char *c0_bin = "../tests/mnist/layers/c0.bin"; -const char *c1_bin = "../tests/mnist/layers/c1.bin"; -const char *d2_bin = "../tests/mnist/layers/d2.bin"; -const char *d3_bin = "../tests/mnist/layers/d3.bin"; -const char *output_bin = "../tests/mnist/output.bin"; +const char *input_bin = "mnist/input.bin"; +const char *c0_bin = "mnist/layers/c0.bin"; +const char *c1_bin = "mnist/layers/c1.bin"; +const char *d2_bin = "mnist/layers/d2.bin"; +const char *d3_bin = "mnist/layers/d3.bin"; +const char *output_bin = "mnist/output.bin"; int main() { - downloadWeightsifDoNotExist(input_bin, "../tests/mnist", "https://cloud.hipert.unimore.it/s/2TyQkMJL3LArLAS/download"); + downloadWeightsifDoNotExist(input_bin, "mnist", "https://cloud.hipert.unimore.it/s/2TyQkMJL3LArLAS/download"); // Network layout tk::dnn::dataDim_t dim(1, 1, 28, 28, 1); diff --git a/tests/mnist/test_mnistRT.cpp b/tests/mnist/test_mnistRT.cpp index 802b540..be1dc08 100644 --- a/tests/mnist/test_mnistRT.cpp +++ b/tests/mnist/test_mnistRT.cpp @@ -3,12 +3,12 @@ #include "tkdnn.h" #include "NvInfer.h" -const char *input_bin = "../tests/mnist/input.bin"; -const char *c0_bin = "../tests/mnist/layers/c0.bin"; -const char *c1_bin = "../tests/mnist/layers/c1.bin"; -const char *d2_bin = "../tests/mnist/layers/d2.bin"; -const char *d3_bin = "../tests/mnist/layers/d3.bin"; -const char *output_bin = "../tests/mnist/output.bin"; +const char *input_bin = "mnist/input.bin"; +const char *c0_bin = "mnist/layers/c0.bin"; +const char *c1_bin = "mnist/layers/c1.bin"; +const char *d2_bin = "mnist/layers/d2.bin"; +const char *d3_bin = "mnist/layers/d3.bin"; +const char *output_bin = "mnist/output.bin"; using namespace nvinfer1; @@ -25,7 +25,7 @@ class Logger : public ILogger int main() { - downloadWeightsifDoNotExist(input_bin, "../tests/mnist", "https://cloud.hipert.unimore.it/s/2TyQkMJL3LArLAS/download"); + downloadWeightsifDoNotExist(input_bin, "mnist", "https://cloud.hipert.unimore.it/s/2TyQkMJL3LArLAS/download"); std::cout<<"\n==== CUDNN ====\n"; // Network layout diff --git a/tests/mobilenetv2ssd/mobilenetv2ssd.cpp b/tests/mobilenetv2ssd/mobilenetv2ssd.cpp index 883d05a..787341f 100644 --- a/tests/mobilenetv2ssd/mobilenetv2ssd.cpp +++ b/tests/mobilenetv2ssd/mobilenetv2ssd.cpp @@ -2,139 +2,139 @@ #include "tkdnn.h" -const char *output_bin1 = "../tests/mobilenetv2ssd/debug/classification_headers-5.bin"; -const char *output_bin2 = "../tests/mobilenetv2ssd/debug/regression_headers-5.bin"; -const char *input_bin = "../tests/mobilenetv2ssd/debug/input.bin"; +const char *output_bin1 = "mobilenetv2ssd/debug/classification_headers-5.bin"; +const char *output_bin2 = "mobilenetv2ssd/debug/regression_headers-5.bin"; +const char *input_bin = "mobilenetv2ssd/debug/input.bin"; -const char *conv0_bin = "../tests/mobilenetv2ssd/layers/base_net-0-0.bin"; +const char *conv0_bin = "mobilenetv2ssd/layers/base_net-0-0.bin"; const char *inverted_residual1[] = { - "../tests/mobilenetv2ssd/layers/base_net-1-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-1-conv-3.bin"}; + "mobilenetv2ssd/layers/base_net-1-conv-0.bin", + "mobilenetv2ssd/layers/base_net-1-conv-3.bin"}; const char *inverted_residual2[] = { - "../tests/mobilenetv2ssd/layers/base_net-2-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-2-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-2-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-2-conv-0.bin", + "mobilenetv2ssd/layers/base_net-2-conv-3.bin", + "mobilenetv2ssd/layers/base_net-2-conv-6.bin"}; const char *inverted_residual3[] = { - "../tests/mobilenetv2ssd/layers/base_net-3-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-3-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-3-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-3-conv-0.bin", + "mobilenetv2ssd/layers/base_net-3-conv-3.bin", + "mobilenetv2ssd/layers/base_net-3-conv-6.bin"}; const char *inverted_residual4[] = { - "../tests/mobilenetv2ssd/layers/base_net-4-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-4-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-4-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-4-conv-0.bin", + "mobilenetv2ssd/layers/base_net-4-conv-3.bin", + "mobilenetv2ssd/layers/base_net-4-conv-6.bin"}; const char *inverted_residual5[] = { - "../tests/mobilenetv2ssd/layers/base_net-5-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-5-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-5-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-5-conv-0.bin", + "mobilenetv2ssd/layers/base_net-5-conv-3.bin", + "mobilenetv2ssd/layers/base_net-5-conv-6.bin"}; const char *inverted_residual6[] = { - "../tests/mobilenetv2ssd/layers/base_net-6-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-6-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-6-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-6-conv-0.bin", + "mobilenetv2ssd/layers/base_net-6-conv-3.bin", + "mobilenetv2ssd/layers/base_net-6-conv-6.bin"}; const char *inverted_residual7[] = { - "../tests/mobilenetv2ssd/layers/base_net-7-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-7-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-7-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-7-conv-0.bin", + "mobilenetv2ssd/layers/base_net-7-conv-3.bin", + "mobilenetv2ssd/layers/base_net-7-conv-6.bin"}; const char *inverted_residual8[] = { - "../tests/mobilenetv2ssd/layers/base_net-8-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-8-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-8-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-8-conv-0.bin", + "mobilenetv2ssd/layers/base_net-8-conv-3.bin", + "mobilenetv2ssd/layers/base_net-8-conv-6.bin"}; const char *inverted_residual9[] = { - "../tests/mobilenetv2ssd/layers/base_net-9-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-9-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-9-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-9-conv-0.bin", + "mobilenetv2ssd/layers/base_net-9-conv-3.bin", + "mobilenetv2ssd/layers/base_net-9-conv-6.bin"}; const char *inverted_residual10[] = { - "../tests/mobilenetv2ssd/layers/base_net-10-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-10-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-10-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-10-conv-0.bin", + "mobilenetv2ssd/layers/base_net-10-conv-3.bin", + "mobilenetv2ssd/layers/base_net-10-conv-6.bin"}; const char *inverted_residual11[] = { - "../tests/mobilenetv2ssd/layers/base_net-11-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-11-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-11-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-11-conv-0.bin", + "mobilenetv2ssd/layers/base_net-11-conv-3.bin", + "mobilenetv2ssd/layers/base_net-11-conv-6.bin"}; const char *inverted_residual12[] = { - "../tests/mobilenetv2ssd/layers/base_net-12-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-12-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-12-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-12-conv-0.bin", + "mobilenetv2ssd/layers/base_net-12-conv-3.bin", + "mobilenetv2ssd/layers/base_net-12-conv-6.bin"}; const char *inverted_residual13[] = { - "../tests/mobilenetv2ssd/layers/base_net-13-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-13-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-13-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-13-conv-0.bin", + "mobilenetv2ssd/layers/base_net-13-conv-3.bin", + "mobilenetv2ssd/layers/base_net-13-conv-6.bin"}; const char *inverted_residual14[] = { - "../tests/mobilenetv2ssd/layers/base_net-14-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-14-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-14-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-14-conv-0.bin", + "mobilenetv2ssd/layers/base_net-14-conv-3.bin", + "mobilenetv2ssd/layers/base_net-14-conv-6.bin"}; const char *inverted_residual15[] = { - "../tests/mobilenetv2ssd/layers/base_net-15-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-15-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-15-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-15-conv-0.bin", + "mobilenetv2ssd/layers/base_net-15-conv-3.bin", + "mobilenetv2ssd/layers/base_net-15-conv-6.bin"}; const char *inverted_residual16[] = { - "../tests/mobilenetv2ssd/layers/base_net-16-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-16-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-16-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-16-conv-0.bin", + "mobilenetv2ssd/layers/base_net-16-conv-3.bin", + "mobilenetv2ssd/layers/base_net-16-conv-6.bin"}; const char *inverted_residual17[] = { - "../tests/mobilenetv2ssd/layers/base_net-17-conv-0.bin", - "../tests/mobilenetv2ssd/layers/base_net-17-conv-3.bin", - "../tests/mobilenetv2ssd/layers/base_net-17-conv-6.bin"}; + "mobilenetv2ssd/layers/base_net-17-conv-0.bin", + "mobilenetv2ssd/layers/base_net-17-conv-3.bin", + "mobilenetv2ssd/layers/base_net-17-conv-6.bin"}; -const char *conv18 = "../tests/mobilenetv2ssd/layers/base_net-18-0.bin"; +const char *conv18 = "mobilenetv2ssd/layers/base_net-18-0.bin"; const char *extras0[] = { - "../tests/mobilenetv2ssd/layers/extras-0-conv-0.bin", - "../tests/mobilenetv2ssd/layers/extras-0-conv-3.bin", - "../tests/mobilenetv2ssd/layers/extras-0-conv-6.bin"}; + "mobilenetv2ssd/layers/extras-0-conv-0.bin", + "mobilenetv2ssd/layers/extras-0-conv-3.bin", + "mobilenetv2ssd/layers/extras-0-conv-6.bin"}; const char *extras1[] = { - "../tests/mobilenetv2ssd/layers/extras-1-conv-0.bin", - "../tests/mobilenetv2ssd/layers/extras-1-conv-3.bin", - "../tests/mobilenetv2ssd/layers/extras-1-conv-6.bin"}; + "mobilenetv2ssd/layers/extras-1-conv-0.bin", + "mobilenetv2ssd/layers/extras-1-conv-3.bin", + "mobilenetv2ssd/layers/extras-1-conv-6.bin"}; const char *extras2[] = { - "../tests/mobilenetv2ssd/layers/extras-2-conv-0.bin", - "../tests/mobilenetv2ssd/layers/extras-2-conv-3.bin", - "../tests/mobilenetv2ssd/layers/extras-2-conv-6.bin"}; + "mobilenetv2ssd/layers/extras-2-conv-0.bin", + "mobilenetv2ssd/layers/extras-2-conv-3.bin", + "mobilenetv2ssd/layers/extras-2-conv-6.bin"}; const char *extras3[] = { - "../tests/mobilenetv2ssd/layers/extras-3-conv-0.bin", - "../tests/mobilenetv2ssd/layers/extras-3-conv-3.bin", - "../tests/mobilenetv2ssd/layers/extras-3-conv-6.bin"}; + "mobilenetv2ssd/layers/extras-3-conv-0.bin", + "mobilenetv2ssd/layers/extras-3-conv-3.bin", + "mobilenetv2ssd/layers/extras-3-conv-6.bin"}; const char *classification_header0[] = { - "../tests/mobilenetv2ssd/layers/classification_headers-0-0.bin", - "../tests/mobilenetv2ssd/layers/classification_headers-0-3.bin"}; + "mobilenetv2ssd/layers/classification_headers-0-0.bin", + "mobilenetv2ssd/layers/classification_headers-0-3.bin"}; const char *classification_header1[] = { - "../tests/mobilenetv2ssd/layers/classification_headers-1-0.bin", - "../tests/mobilenetv2ssd/layers/classification_headers-1-3.bin"}; + "mobilenetv2ssd/layers/classification_headers-1-0.bin", + "mobilenetv2ssd/layers/classification_headers-1-3.bin"}; const char *classification_header2[] = { - "../tests/mobilenetv2ssd/layers/classification_headers-2-0.bin", - "../tests/mobilenetv2ssd/layers/classification_headers-2-3.bin"}; + "mobilenetv2ssd/layers/classification_headers-2-0.bin", + "mobilenetv2ssd/layers/classification_headers-2-3.bin"}; const char *classification_header3[] = { - "../tests/mobilenetv2ssd/layers/classification_headers-3-0.bin", - "../tests/mobilenetv2ssd/layers/classification_headers-3-3.bin"}; + "mobilenetv2ssd/layers/classification_headers-3-0.bin", + "mobilenetv2ssd/layers/classification_headers-3-3.bin"}; const char *classification_header4[] = { - "../tests/mobilenetv2ssd/layers/classification_headers-4-0.bin", - "../tests/mobilenetv2ssd/layers/classification_headers-4-3.bin"}; + "mobilenetv2ssd/layers/classification_headers-4-0.bin", + "mobilenetv2ssd/layers/classification_headers-4-3.bin"}; -const char *classification_header5 = "../tests/mobilenetv2ssd/layers/classification_headers-5.bin"; +const char *classification_header5 = "mobilenetv2ssd/layers/classification_headers-5.bin"; const char *regression_header0[] = { - "../tests/mobilenetv2ssd/layers/regression_headers-0-0.bin", - "../tests/mobilenetv2ssd/layers/regression_headers-0-3.bin"}; + "mobilenetv2ssd/layers/regression_headers-0-0.bin", + "mobilenetv2ssd/layers/regression_headers-0-3.bin"}; const char *regression_header1[] = { - "../tests/mobilenetv2ssd/layers/regression_headers-1-0.bin", - "../tests/mobilenetv2ssd/layers/regression_headers-1-3.bin"}; + "mobilenetv2ssd/layers/regression_headers-1-0.bin", + "mobilenetv2ssd/layers/regression_headers-1-3.bin"}; const char *regression_header2[] = { - "../tests/mobilenetv2ssd/layers/regression_headers-2-0.bin", - "../tests/mobilenetv2ssd/layers/regression_headers-2-3.bin"}; + "mobilenetv2ssd/layers/regression_headers-2-0.bin", + "mobilenetv2ssd/layers/regression_headers-2-3.bin"}; const char *regression_header3[] = { - "../tests/mobilenetv2ssd/layers/regression_headers-3-0.bin", - "../tests/mobilenetv2ssd/layers/regression_headers-3-3.bin"}; + "mobilenetv2ssd/layers/regression_headers-3-0.bin", + "mobilenetv2ssd/layers/regression_headers-3-3.bin"}; const char *regression_header4[] = { - "../tests/mobilenetv2ssd/layers/regression_headers-4-0.bin", - "../tests/mobilenetv2ssd/layers/regression_headers-4-3.bin"}; + "mobilenetv2ssd/layers/regression_headers-4-0.bin", + "mobilenetv2ssd/layers/regression_headers-4-3.bin"}; -const char *regression_header5 = "../tests/mobilenetv2ssd/layers/regression_headers-5.bin"; +const char *regression_header5 = "mobilenetv2ssd/layers/regression_headers-5.bin"; int main() { - downloadWeightsifDoNotExist(input_bin, "../tests/mobilenetv2ssd", "https://cloud.hipert.unimore.it/s/x4ZfxBKN23zAJQp/download"); + downloadWeightsifDoNotExist(input_bin, "mobilenetv2ssd", "https://cloud.hipert.unimore.it/s/x4ZfxBKN23zAJQp/download"); int classes = 21; diff --git a/tests/mobilenetv2ssd512/mobilenetv2ssd512.cpp b/tests/mobilenetv2ssd512/mobilenetv2ssd512.cpp index 4fb530a..8886232 100644 --- a/tests/mobilenetv2ssd512/mobilenetv2ssd512.cpp +++ b/tests/mobilenetv2ssd512/mobilenetv2ssd512.cpp @@ -2,139 +2,139 @@ #include "tkdnn.h" -const char *output_bin1 = "../tests/mobilenetv2ssd512/debug/classification_headers-5.bin"; -const char *output_bin2 = "../tests/mobilenetv2ssd512/debug/regression_headers-5.bin"; -const char *input_bin = "../tests/mobilenetv2ssd512/debug/input.bin"; +const char *output_bin1 = "mobilenetv2ssd512/debug/classification_headers-5.bin"; +const char *output_bin2 = "mobilenetv2ssd512/debug/regression_headers-5.bin"; +const char *input_bin = "mobilenetv2ssd512/debug/input.bin"; -const char *conv0_bin = "../tests/mobilenetv2ssd512/layers/base_net-0-0.bin"; +const char *conv0_bin = "mobilenetv2ssd512/layers/base_net-0-0.bin"; const char *inverted_residual1[] = { - "../tests/mobilenetv2ssd512/layers/base_net-1-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-1-conv-3.bin"}; + "mobilenetv2ssd512/layers/base_net-1-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-1-conv-3.bin"}; const char *inverted_residual2[] = { - "../tests/mobilenetv2ssd512/layers/base_net-2-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-2-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-2-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-2-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-2-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-2-conv-6.bin"}; const char *inverted_residual3[] = { - "../tests/mobilenetv2ssd512/layers/base_net-3-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-3-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-3-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-3-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-3-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-3-conv-6.bin"}; const char *inverted_residual4[] = { - "../tests/mobilenetv2ssd512/layers/base_net-4-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-4-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-4-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-4-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-4-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-4-conv-6.bin"}; const char *inverted_residual5[] = { - "../tests/mobilenetv2ssd512/layers/base_net-5-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-5-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-5-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-5-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-5-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-5-conv-6.bin"}; const char *inverted_residual6[] = { - "../tests/mobilenetv2ssd512/layers/base_net-6-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-6-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-6-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-6-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-6-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-6-conv-6.bin"}; const char *inverted_residual7[] = { - "../tests/mobilenetv2ssd512/layers/base_net-7-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-7-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-7-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-7-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-7-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-7-conv-6.bin"}; const char *inverted_residual8[] = { - "../tests/mobilenetv2ssd512/layers/base_net-8-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-8-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-8-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-8-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-8-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-8-conv-6.bin"}; const char *inverted_residual9[] = { - "../tests/mobilenetv2ssd512/layers/base_net-9-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-9-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-9-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-9-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-9-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-9-conv-6.bin"}; const char *inverted_residual10[] = { - "../tests/mobilenetv2ssd512/layers/base_net-10-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-10-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-10-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-10-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-10-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-10-conv-6.bin"}; const char *inverted_residual11[] = { - "../tests/mobilenetv2ssd512/layers/base_net-11-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-11-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-11-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-11-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-11-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-11-conv-6.bin"}; const char *inverted_residual12[] = { - "../tests/mobilenetv2ssd512/layers/base_net-12-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-12-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-12-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-12-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-12-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-12-conv-6.bin"}; const char *inverted_residual13[] = { - "../tests/mobilenetv2ssd512/layers/base_net-13-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-13-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-13-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-13-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-13-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-13-conv-6.bin"}; const char *inverted_residual14[] = { - "../tests/mobilenetv2ssd512/layers/base_net-14-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-14-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-14-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-14-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-14-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-14-conv-6.bin"}; const char *inverted_residual15[] = { - "../tests/mobilenetv2ssd512/layers/base_net-15-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-15-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-15-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-15-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-15-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-15-conv-6.bin"}; const char *inverted_residual16[] = { - "../tests/mobilenetv2ssd512/layers/base_net-16-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-16-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-16-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-16-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-16-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-16-conv-6.bin"}; const char *inverted_residual17[] = { - "../tests/mobilenetv2ssd512/layers/base_net-17-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/base_net-17-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/base_net-17-conv-6.bin"}; + "mobilenetv2ssd512/layers/base_net-17-conv-0.bin", + "mobilenetv2ssd512/layers/base_net-17-conv-3.bin", + "mobilenetv2ssd512/layers/base_net-17-conv-6.bin"}; -const char *conv18 = "../tests/mobilenetv2ssd512/layers/base_net-18-0.bin"; +const char *conv18 = "mobilenetv2ssd512/layers/base_net-18-0.bin"; const char *extras0[] = { - "../tests/mobilenetv2ssd512/layers/extras-0-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/extras-0-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/extras-0-conv-6.bin"}; + "mobilenetv2ssd512/layers/extras-0-conv-0.bin", + "mobilenetv2ssd512/layers/extras-0-conv-3.bin", + "mobilenetv2ssd512/layers/extras-0-conv-6.bin"}; const char *extras1[] = { - "../tests/mobilenetv2ssd512/layers/extras-1-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/extras-1-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/extras-1-conv-6.bin"}; + "mobilenetv2ssd512/layers/extras-1-conv-0.bin", + "mobilenetv2ssd512/layers/extras-1-conv-3.bin", + "mobilenetv2ssd512/layers/extras-1-conv-6.bin"}; const char *extras2[] = { - "../tests/mobilenetv2ssd512/layers/extras-2-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/extras-2-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/extras-2-conv-6.bin"}; + "mobilenetv2ssd512/layers/extras-2-conv-0.bin", + "mobilenetv2ssd512/layers/extras-2-conv-3.bin", + "mobilenetv2ssd512/layers/extras-2-conv-6.bin"}; const char *extras3[] = { - "../tests/mobilenetv2ssd512/layers/extras-3-conv-0.bin", - "../tests/mobilenetv2ssd512/layers/extras-3-conv-3.bin", - "../tests/mobilenetv2ssd512/layers/extras-3-conv-6.bin"}; + "mobilenetv2ssd512/layers/extras-3-conv-0.bin", + "mobilenetv2ssd512/layers/extras-3-conv-3.bin", + "mobilenetv2ssd512/layers/extras-3-conv-6.bin"}; const char *classification_header0[] = { - "../tests/mobilenetv2ssd512/layers/classification_headers-0-0.bin", - "../tests/mobilenetv2ssd512/layers/classification_headers-0-3.bin"}; + "mobilenetv2ssd512/layers/classification_headers-0-0.bin", + "mobilenetv2ssd512/layers/classification_headers-0-3.bin"}; const char *classification_header1[] = { - "../tests/mobilenetv2ssd512/layers/classification_headers-1-0.bin", - "../tests/mobilenetv2ssd512/layers/classification_headers-1-3.bin"}; + "mobilenetv2ssd512/layers/classification_headers-1-0.bin", + "mobilenetv2ssd512/layers/classification_headers-1-3.bin"}; const char *classification_header2[] = { - "../tests/mobilenetv2ssd512/layers/classification_headers-2-0.bin", - "../tests/mobilenetv2ssd512/layers/classification_headers-2-3.bin"}; + "mobilenetv2ssd512/layers/classification_headers-2-0.bin", + "mobilenetv2ssd512/layers/classification_headers-2-3.bin"}; const char *classification_header3[] = { - "../tests/mobilenetv2ssd512/layers/classification_headers-3-0.bin", - "../tests/mobilenetv2ssd512/layers/classification_headers-3-3.bin"}; + "mobilenetv2ssd512/layers/classification_headers-3-0.bin", + "mobilenetv2ssd512/layers/classification_headers-3-3.bin"}; const char *classification_header4[] = { - "../tests/mobilenetv2ssd512/layers/classification_headers-4-0.bin", - "../tests/mobilenetv2ssd512/layers/classification_headers-4-3.bin"}; + "mobilenetv2ssd512/layers/classification_headers-4-0.bin", + "mobilenetv2ssd512/layers/classification_headers-4-3.bin"}; -const char *classification_header5 = "../tests/mobilenetv2ssd512/layers/classification_headers-5.bin"; +const char *classification_header5 = "mobilenetv2ssd512/layers/classification_headers-5.bin"; const char *regression_header0[] = { - "../tests/mobilenetv2ssd512/layers/regression_headers-0-0.bin", - "../tests/mobilenetv2ssd512/layers/regression_headers-0-3.bin"}; + "mobilenetv2ssd512/layers/regression_headers-0-0.bin", + "mobilenetv2ssd512/layers/regression_headers-0-3.bin"}; const char *regression_header1[] = { - "../tests/mobilenetv2ssd512/layers/regression_headers-1-0.bin", - "../tests/mobilenetv2ssd512/layers/regression_headers-1-3.bin"}; + "mobilenetv2ssd512/layers/regression_headers-1-0.bin", + "mobilenetv2ssd512/layers/regression_headers-1-3.bin"}; const char *regression_header2[] = { - "../tests/mobilenetv2ssd512/layers/regression_headers-2-0.bin", - "../tests/mobilenetv2ssd512/layers/regression_headers-2-3.bin"}; + "mobilenetv2ssd512/layers/regression_headers-2-0.bin", + "mobilenetv2ssd512/layers/regression_headers-2-3.bin"}; const char *regression_header3[] = { - "../tests/mobilenetv2ssd512/layers/regression_headers-3-0.bin", - "../tests/mobilenetv2ssd512/layers/regression_headers-3-3.bin"}; + "mobilenetv2ssd512/layers/regression_headers-3-0.bin", + "mobilenetv2ssd512/layers/regression_headers-3-3.bin"}; const char *regression_header4[] = { - "../tests/mobilenetv2ssd512/layers/regression_headers-4-0.bin", - "../tests/mobilenetv2ssd512/layers/regression_headers-4-3.bin"}; + "mobilenetv2ssd512/layers/regression_headers-4-0.bin", + "mobilenetv2ssd512/layers/regression_headers-4-3.bin"}; -const char *regression_header5 = "../tests/mobilenetv2ssd512/layers/regression_headers-5.bin"; +const char *regression_header5 = "mobilenetv2ssd512/layers/regression_headers-5.bin"; int main() { - downloadWeightsifDoNotExist(input_bin, "../tests/mobilenetv2ssd512", "https://cloud.hipert.unimore.it/s/pdCw2dYyHMJrcEM/download"); + downloadWeightsifDoNotExist(input_bin, "mobilenetv2ssd512", "https://cloud.hipert.unimore.it/s/pdCw2dYyHMJrcEM/download"); int classes = 81; diff --git a/tests/resnet101/resnet101.cpp b/tests/resnet101/resnet101.cpp index a0febd7..5bb6784 100644 --- a/tests/resnet101/resnet101.cpp +++ b/tests/resnet101/resnet101.cpp @@ -1,159 +1,159 @@ #include #include "tkdnn.h" -const char *input_bin = "../tests/resnet101/debug/input.bin"; -const char *conv1_bin = "../tests/resnet101/layers/conv1.bin"; +const char *input_bin = "resnet101/debug/input.bin"; +const char *conv1_bin = "resnet101/layers/conv1.bin"; //layer1 const char *layer1_bin[]={ -"../tests/resnet101/layers/layer1-0-conv1.bin", -"../tests/resnet101/layers/layer1-0-conv2.bin", -"../tests/resnet101/layers/layer1-0-conv3.bin", -"../tests/resnet101/layers/layer1-0-downsample-0.bin", +"resnet101/layers/layer1-0-conv1.bin", +"resnet101/layers/layer1-0-conv2.bin", +"resnet101/layers/layer1-0-conv3.bin", +"resnet101/layers/layer1-0-downsample-0.bin", -"../tests/resnet101/layers/layer1-1-conv1.bin", -"../tests/resnet101/layers/layer1-1-conv2.bin", -"../tests/resnet101/layers/layer1-1-conv3.bin", +"resnet101/layers/layer1-1-conv1.bin", +"resnet101/layers/layer1-1-conv2.bin", +"resnet101/layers/layer1-1-conv3.bin", -"../tests/resnet101/layers/layer1-2-conv1.bin", -"../tests/resnet101/layers/layer1-2-conv2.bin", -"../tests/resnet101/layers/layer1-2-conv3.bin"}; +"resnet101/layers/layer1-2-conv1.bin", +"resnet101/layers/layer1-2-conv2.bin", +"resnet101/layers/layer1-2-conv3.bin"}; //layer2 const char *layer2_bin[]={ -"../tests/resnet101/layers/layer2-0-conv1.bin", -"../tests/resnet101/layers/layer2-0-conv2.bin", -"../tests/resnet101/layers/layer2-0-conv3.bin", -"../tests/resnet101/layers/layer2-0-downsample-0.bin", +"resnet101/layers/layer2-0-conv1.bin", +"resnet101/layers/layer2-0-conv2.bin", +"resnet101/layers/layer2-0-conv3.bin", +"resnet101/layers/layer2-0-downsample-0.bin", -"../tests/resnet101/layers/layer2-1-conv1.bin", -"../tests/resnet101/layers/layer2-1-conv2.bin", -"../tests/resnet101/layers/layer2-1-conv3.bin", +"resnet101/layers/layer2-1-conv1.bin", +"resnet101/layers/layer2-1-conv2.bin", +"resnet101/layers/layer2-1-conv3.bin", -"../tests/resnet101/layers/layer2-2-conv1.bin", -"../tests/resnet101/layers/layer2-2-conv2.bin", -"../tests/resnet101/layers/layer2-2-conv3.bin", +"resnet101/layers/layer2-2-conv1.bin", +"resnet101/layers/layer2-2-conv2.bin", +"resnet101/layers/layer2-2-conv3.bin", -"../tests/resnet101/layers/layer2-3-conv1.bin", -"../tests/resnet101/layers/layer2-3-conv2.bin", -"../tests/resnet101/layers/layer2-3-conv3.bin" +"resnet101/layers/layer2-3-conv1.bin", +"resnet101/layers/layer2-3-conv2.bin", +"resnet101/layers/layer2-3-conv3.bin" }; //layer3 const char *layer3_bin[]={ -"../tests/resnet101/layers/layer3-0-conv1.bin", -"../tests/resnet101/layers/layer3-0-conv2.bin", -"../tests/resnet101/layers/layer3-0-conv3.bin", -"../tests/resnet101/layers/layer3-0-downsample-0.bin", +"resnet101/layers/layer3-0-conv1.bin", +"resnet101/layers/layer3-0-conv2.bin", +"resnet101/layers/layer3-0-conv3.bin", +"resnet101/layers/layer3-0-downsample-0.bin", -"../tests/resnet101/layers/layer3-1-conv1.bin", -"../tests/resnet101/layers/layer3-1-conv2.bin", -"../tests/resnet101/layers/layer3-1-conv3.bin", +"resnet101/layers/layer3-1-conv1.bin", +"resnet101/layers/layer3-1-conv2.bin", +"resnet101/layers/layer3-1-conv3.bin", -"../tests/resnet101/layers/layer3-2-conv1.bin", -"../tests/resnet101/layers/layer3-2-conv2.bin", -"../tests/resnet101/layers/layer3-2-conv3.bin", +"resnet101/layers/layer3-2-conv1.bin", +"resnet101/layers/layer3-2-conv2.bin", +"resnet101/layers/layer3-2-conv3.bin", -"../tests/resnet101/layers/layer3-3-conv1.bin", -"../tests/resnet101/layers/layer3-3-conv2.bin", -"../tests/resnet101/layers/layer3-3-conv3.bin", +"resnet101/layers/layer3-3-conv1.bin", +"resnet101/layers/layer3-3-conv2.bin", +"resnet101/layers/layer3-3-conv3.bin", -"../tests/resnet101/layers/layer3-4-conv1.bin", -"../tests/resnet101/layers/layer3-4-conv2.bin", -"../tests/resnet101/layers/layer3-4-conv3.bin", +"resnet101/layers/layer3-4-conv1.bin", +"resnet101/layers/layer3-4-conv2.bin", +"resnet101/layers/layer3-4-conv3.bin", -"../tests/resnet101/layers/layer3-5-conv1.bin", -"../tests/resnet101/layers/layer3-5-conv2.bin", -"../tests/resnet101/layers/layer3-5-conv3.bin", +"resnet101/layers/layer3-5-conv1.bin", +"resnet101/layers/layer3-5-conv2.bin", +"resnet101/layers/layer3-5-conv3.bin", -"../tests/resnet101/layers/layer3-6-conv1.bin", -"../tests/resnet101/layers/layer3-6-conv2.bin", -"../tests/resnet101/layers/layer3-6-conv3.bin", +"resnet101/layers/layer3-6-conv1.bin", +"resnet101/layers/layer3-6-conv2.bin", +"resnet101/layers/layer3-6-conv3.bin", -"../tests/resnet101/layers/layer3-7-conv1.bin", -"../tests/resnet101/layers/layer3-7-conv2.bin", -"../tests/resnet101/layers/layer3-7-conv3.bin", +"resnet101/layers/layer3-7-conv1.bin", +"resnet101/layers/layer3-7-conv2.bin", +"resnet101/layers/layer3-7-conv3.bin", -"../tests/resnet101/layers/layer3-8-conv1.bin", -"../tests/resnet101/layers/layer3-8-conv2.bin", -"../tests/resnet101/layers/layer3-8-conv3.bin", +"resnet101/layers/layer3-8-conv1.bin", +"resnet101/layers/layer3-8-conv2.bin", +"resnet101/layers/layer3-8-conv3.bin", -"../tests/resnet101/layers/layer3-9-conv1.bin", -"../tests/resnet101/layers/layer3-9-conv2.bin", -"../tests/resnet101/layers/layer3-9-conv3.bin", +"resnet101/layers/layer3-9-conv1.bin", +"resnet101/layers/layer3-9-conv2.bin", +"resnet101/layers/layer3-9-conv3.bin", -"../tests/resnet101/layers/layer3-10-conv1.bin", -"../tests/resnet101/layers/layer3-10-conv2.bin", -"../tests/resnet101/layers/layer3-10-conv3.bin", +"resnet101/layers/layer3-10-conv1.bin", +"resnet101/layers/layer3-10-conv2.bin", +"resnet101/layers/layer3-10-conv3.bin", -"../tests/resnet101/layers/layer3-11-conv1.bin", -"../tests/resnet101/layers/layer3-11-conv2.bin", -"../tests/resnet101/layers/layer3-11-conv3.bin", +"resnet101/layers/layer3-11-conv1.bin", +"resnet101/layers/layer3-11-conv2.bin", +"resnet101/layers/layer3-11-conv3.bin", -"../tests/resnet101/layers/layer3-12-conv1.bin", -"../tests/resnet101/layers/layer3-12-conv2.bin", -"../tests/resnet101/layers/layer3-12-conv3.bin", +"resnet101/layers/layer3-12-conv1.bin", +"resnet101/layers/layer3-12-conv2.bin", +"resnet101/layers/layer3-12-conv3.bin", -"../tests/resnet101/layers/layer3-13-conv1.bin", -"../tests/resnet101/layers/layer3-13-conv2.bin", -"../tests/resnet101/layers/layer3-13-conv3.bin", +"resnet101/layers/layer3-13-conv1.bin", +"resnet101/layers/layer3-13-conv2.bin", +"resnet101/layers/layer3-13-conv3.bin", -"../tests/resnet101/layers/layer3-14-conv1.bin", -"../tests/resnet101/layers/layer3-14-conv2.bin", -"../tests/resnet101/layers/layer3-14-conv3.bin", +"resnet101/layers/layer3-14-conv1.bin", +"resnet101/layers/layer3-14-conv2.bin", +"resnet101/layers/layer3-14-conv3.bin", -"../tests/resnet101/layers/layer3-15-conv1.bin", -"../tests/resnet101/layers/layer3-15-conv2.bin", -"../tests/resnet101/layers/layer3-15-conv3.bin", +"resnet101/layers/layer3-15-conv1.bin", +"resnet101/layers/layer3-15-conv2.bin", +"resnet101/layers/layer3-15-conv3.bin", -"../tests/resnet101/layers/layer3-16-conv1.bin", -"../tests/resnet101/layers/layer3-16-conv2.bin", -"../tests/resnet101/layers/layer3-16-conv3.bin", +"resnet101/layers/layer3-16-conv1.bin", +"resnet101/layers/layer3-16-conv2.bin", +"resnet101/layers/layer3-16-conv3.bin", -"../tests/resnet101/layers/layer3-17-conv1.bin", -"../tests/resnet101/layers/layer3-17-conv2.bin", -"../tests/resnet101/layers/layer3-17-conv3.bin", +"resnet101/layers/layer3-17-conv1.bin", +"resnet101/layers/layer3-17-conv2.bin", +"resnet101/layers/layer3-17-conv3.bin", -"../tests/resnet101/layers/layer3-18-conv1.bin", -"../tests/resnet101/layers/layer3-18-conv2.bin", -"../tests/resnet101/layers/layer3-18-conv3.bin", +"resnet101/layers/layer3-18-conv1.bin", +"resnet101/layers/layer3-18-conv2.bin", +"resnet101/layers/layer3-18-conv3.bin", -"../tests/resnet101/layers/layer3-19-conv1.bin", -"../tests/resnet101/layers/layer3-19-conv2.bin", -"../tests/resnet101/layers/layer3-19-conv3.bin", +"resnet101/layers/layer3-19-conv1.bin", +"resnet101/layers/layer3-19-conv2.bin", +"resnet101/layers/layer3-19-conv3.bin", -"../tests/resnet101/layers/layer3-20-conv1.bin", -"../tests/resnet101/layers/layer3-20-conv2.bin", -"../tests/resnet101/layers/layer3-20-conv3.bin", +"resnet101/layers/layer3-20-conv1.bin", +"resnet101/layers/layer3-20-conv2.bin", +"resnet101/layers/layer3-20-conv3.bin", -"../tests/resnet101/layers/layer3-21-conv1.bin", -"../tests/resnet101/layers/layer3-21-conv2.bin", -"../tests/resnet101/layers/layer3-21-conv3.bin", +"resnet101/layers/layer3-21-conv1.bin", +"resnet101/layers/layer3-21-conv2.bin", +"resnet101/layers/layer3-21-conv3.bin", -"../tests/resnet101/layers/layer3-22-conv1.bin", -"../tests/resnet101/layers/layer3-22-conv2.bin", -"../tests/resnet101/layers/layer3-22-conv3.bin"}; +"resnet101/layers/layer3-22-conv1.bin", +"resnet101/layers/layer3-22-conv2.bin", +"resnet101/layers/layer3-22-conv3.bin"}; //layer4 const char *layer4_bin[]={ -"../tests/resnet101/layers/layer4-0-conv1.bin", -"../tests/resnet101/layers/layer4-0-conv2.bin", -"../tests/resnet101/layers/layer4-0-conv3.bin", -"../tests/resnet101/layers/layer4-0-downsample-0.bin", +"resnet101/layers/layer4-0-conv1.bin", +"resnet101/layers/layer4-0-conv2.bin", +"resnet101/layers/layer4-0-conv3.bin", +"resnet101/layers/layer4-0-downsample-0.bin", -"../tests/resnet101/layers/layer4-1-conv1.bin", -"../tests/resnet101/layers/layer4-1-conv2.bin", -"../tests/resnet101/layers/layer4-1-conv3.bin", +"resnet101/layers/layer4-1-conv1.bin", +"resnet101/layers/layer4-1-conv2.bin", +"resnet101/layers/layer4-1-conv3.bin", -"../tests/resnet101/layers/layer4-2-conv1.bin", -"../tests/resnet101/layers/layer4-2-conv2.bin", -"../tests/resnet101/layers/layer4-2-conv3.bin"}; +"resnet101/layers/layer4-2-conv1.bin", +"resnet101/layers/layer4-2-conv2.bin", +"resnet101/layers/layer4-2-conv3.bin"}; //final -const char *fc_bin = "../tests/resnet101/layers/fc.bin"; +const char *fc_bin = "resnet101/layers/fc.bin"; -const char *output_bin = "../tests/resnet101/debug/fc.bin"; +const char *output_bin = "resnet101/debug/fc.bin"; int main() { diff --git a/tests/resnet101_cnet/resnet101_cnet.cpp b/tests/resnet101_cnet/resnet101_cnet.cpp index cc4682c..d48043b 100644 --- a/tests/resnet101_cnet/resnet101_cnet.cpp +++ b/tests/resnet101_cnet/resnet101_cnet.cpp @@ -8,184 +8,184 @@ #include // std::sort // #include "utils.h" -const char *input_bin = "../tests/resnet101_cnet/debug/input.bin"; -const char *conv1_bin = "../tests/resnet101_cnet/layers/conv1.bin"; +const char *input_bin = "resnet101_cnet/debug/input.bin"; +const char *conv1_bin = "resnet101_cnet/layers/conv1.bin"; //layer1 const char *layer1_bin[]={ -"../tests/resnet101_cnet/layers/layer1-0-conv1.bin", -"../tests/resnet101_cnet/layers/layer1-0-conv2.bin", -"../tests/resnet101_cnet/layers/layer1-0-conv3.bin", -"../tests/resnet101_cnet/layers/layer1-0-downsample-0.bin", +"resnet101_cnet/layers/layer1-0-conv1.bin", +"resnet101_cnet/layers/layer1-0-conv2.bin", +"resnet101_cnet/layers/layer1-0-conv3.bin", +"resnet101_cnet/layers/layer1-0-downsample-0.bin", -"../tests/resnet101_cnet/layers/layer1-1-conv1.bin", -"../tests/resnet101_cnet/layers/layer1-1-conv2.bin", -"../tests/resnet101_cnet/layers/layer1-1-conv3.bin", +"resnet101_cnet/layers/layer1-1-conv1.bin", +"resnet101_cnet/layers/layer1-1-conv2.bin", +"resnet101_cnet/layers/layer1-1-conv3.bin", -"../tests/resnet101_cnet/layers/layer1-2-conv1.bin", -"../tests/resnet101_cnet/layers/layer1-2-conv2.bin", -"../tests/resnet101_cnet/layers/layer1-2-conv3.bin"}; +"resnet101_cnet/layers/layer1-2-conv1.bin", +"resnet101_cnet/layers/layer1-2-conv2.bin", +"resnet101_cnet/layers/layer1-2-conv3.bin"}; //layer2 const char *layer2_bin[]={ -"../tests/resnet101_cnet/layers/layer2-0-conv1.bin", -"../tests/resnet101_cnet/layers/layer2-0-conv2.bin", -"../tests/resnet101_cnet/layers/layer2-0-conv3.bin", -"../tests/resnet101_cnet/layers/layer2-0-downsample-0.bin", +"resnet101_cnet/layers/layer2-0-conv1.bin", +"resnet101_cnet/layers/layer2-0-conv2.bin", +"resnet101_cnet/layers/layer2-0-conv3.bin", +"resnet101_cnet/layers/layer2-0-downsample-0.bin", -"../tests/resnet101_cnet/layers/layer2-1-conv1.bin", -"../tests/resnet101_cnet/layers/layer2-1-conv2.bin", -"../tests/resnet101_cnet/layers/layer2-1-conv3.bin", +"resnet101_cnet/layers/layer2-1-conv1.bin", +"resnet101_cnet/layers/layer2-1-conv2.bin", +"resnet101_cnet/layers/layer2-1-conv3.bin", -"../tests/resnet101_cnet/layers/layer2-2-conv1.bin", -"../tests/resnet101_cnet/layers/layer2-2-conv2.bin", -"../tests/resnet101_cnet/layers/layer2-2-conv3.bin", +"resnet101_cnet/layers/layer2-2-conv1.bin", +"resnet101_cnet/layers/layer2-2-conv2.bin", +"resnet101_cnet/layers/layer2-2-conv3.bin", -"../tests/resnet101_cnet/layers/layer2-3-conv1.bin", -"../tests/resnet101_cnet/layers/layer2-3-conv2.bin", -"../tests/resnet101_cnet/layers/layer2-3-conv3.bin" +"resnet101_cnet/layers/layer2-3-conv1.bin", +"resnet101_cnet/layers/layer2-3-conv2.bin", +"resnet101_cnet/layers/layer2-3-conv3.bin" }; //layer3 const char *layer3_bin[]={ -"../tests/resnet101_cnet/layers/layer3-0-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-0-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-0-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-0-downsample-0.bin", +"resnet101_cnet/layers/layer3-0-conv1.bin", +"resnet101_cnet/layers/layer3-0-conv2.bin", +"resnet101_cnet/layers/layer3-0-conv3.bin", +"resnet101_cnet/layers/layer3-0-downsample-0.bin", -"../tests/resnet101_cnet/layers/layer3-1-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-1-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-1-conv3.bin", +"resnet101_cnet/layers/layer3-1-conv1.bin", +"resnet101_cnet/layers/layer3-1-conv2.bin", +"resnet101_cnet/layers/layer3-1-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-2-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-2-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-2-conv3.bin", +"resnet101_cnet/layers/layer3-2-conv1.bin", +"resnet101_cnet/layers/layer3-2-conv2.bin", +"resnet101_cnet/layers/layer3-2-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-3-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-3-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-3-conv3.bin", +"resnet101_cnet/layers/layer3-3-conv1.bin", +"resnet101_cnet/layers/layer3-3-conv2.bin", +"resnet101_cnet/layers/layer3-3-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-4-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-4-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-4-conv3.bin", +"resnet101_cnet/layers/layer3-4-conv1.bin", +"resnet101_cnet/layers/layer3-4-conv2.bin", +"resnet101_cnet/layers/layer3-4-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-5-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-5-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-5-conv3.bin", +"resnet101_cnet/layers/layer3-5-conv1.bin", +"resnet101_cnet/layers/layer3-5-conv2.bin", +"resnet101_cnet/layers/layer3-5-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-6-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-6-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-6-conv3.bin", +"resnet101_cnet/layers/layer3-6-conv1.bin", +"resnet101_cnet/layers/layer3-6-conv2.bin", +"resnet101_cnet/layers/layer3-6-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-7-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-7-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-7-conv3.bin", +"resnet101_cnet/layers/layer3-7-conv1.bin", +"resnet101_cnet/layers/layer3-7-conv2.bin", +"resnet101_cnet/layers/layer3-7-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-8-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-8-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-8-conv3.bin", +"resnet101_cnet/layers/layer3-8-conv1.bin", +"resnet101_cnet/layers/layer3-8-conv2.bin", +"resnet101_cnet/layers/layer3-8-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-9-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-9-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-9-conv3.bin", +"resnet101_cnet/layers/layer3-9-conv1.bin", +"resnet101_cnet/layers/layer3-9-conv2.bin", +"resnet101_cnet/layers/layer3-9-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-10-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-10-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-10-conv3.bin", +"resnet101_cnet/layers/layer3-10-conv1.bin", +"resnet101_cnet/layers/layer3-10-conv2.bin", +"resnet101_cnet/layers/layer3-10-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-11-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-11-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-11-conv3.bin", +"resnet101_cnet/layers/layer3-11-conv1.bin", +"resnet101_cnet/layers/layer3-11-conv2.bin", +"resnet101_cnet/layers/layer3-11-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-12-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-12-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-12-conv3.bin", +"resnet101_cnet/layers/layer3-12-conv1.bin", +"resnet101_cnet/layers/layer3-12-conv2.bin", +"resnet101_cnet/layers/layer3-12-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-13-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-13-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-13-conv3.bin", +"resnet101_cnet/layers/layer3-13-conv1.bin", +"resnet101_cnet/layers/layer3-13-conv2.bin", +"resnet101_cnet/layers/layer3-13-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-14-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-14-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-14-conv3.bin", +"resnet101_cnet/layers/layer3-14-conv1.bin", +"resnet101_cnet/layers/layer3-14-conv2.bin", +"resnet101_cnet/layers/layer3-14-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-15-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-15-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-15-conv3.bin", +"resnet101_cnet/layers/layer3-15-conv1.bin", +"resnet101_cnet/layers/layer3-15-conv2.bin", +"resnet101_cnet/layers/layer3-15-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-16-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-16-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-16-conv3.bin", +"resnet101_cnet/layers/layer3-16-conv1.bin", +"resnet101_cnet/layers/layer3-16-conv2.bin", +"resnet101_cnet/layers/layer3-16-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-17-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-17-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-17-conv3.bin", +"resnet101_cnet/layers/layer3-17-conv1.bin", +"resnet101_cnet/layers/layer3-17-conv2.bin", +"resnet101_cnet/layers/layer3-17-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-18-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-18-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-18-conv3.bin", +"resnet101_cnet/layers/layer3-18-conv1.bin", +"resnet101_cnet/layers/layer3-18-conv2.bin", +"resnet101_cnet/layers/layer3-18-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-19-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-19-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-19-conv3.bin", +"resnet101_cnet/layers/layer3-19-conv1.bin", +"resnet101_cnet/layers/layer3-19-conv2.bin", +"resnet101_cnet/layers/layer3-19-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-20-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-20-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-20-conv3.bin", +"resnet101_cnet/layers/layer3-20-conv1.bin", +"resnet101_cnet/layers/layer3-20-conv2.bin", +"resnet101_cnet/layers/layer3-20-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-21-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-21-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-21-conv3.bin", +"resnet101_cnet/layers/layer3-21-conv1.bin", +"resnet101_cnet/layers/layer3-21-conv2.bin", +"resnet101_cnet/layers/layer3-21-conv3.bin", -"../tests/resnet101_cnet/layers/layer3-22-conv1.bin", -"../tests/resnet101_cnet/layers/layer3-22-conv2.bin", -"../tests/resnet101_cnet/layers/layer3-22-conv3.bin"}; +"resnet101_cnet/layers/layer3-22-conv1.bin", +"resnet101_cnet/layers/layer3-22-conv2.bin", +"resnet101_cnet/layers/layer3-22-conv3.bin"}; //layer4 const char *layer4_bin[]={ -"../tests/resnet101_cnet/layers/layer4-0-conv1.bin", -"../tests/resnet101_cnet/layers/layer4-0-conv2.bin", -"../tests/resnet101_cnet/layers/layer4-0-conv3.bin", -"../tests/resnet101_cnet/layers/layer4-0-downsample-0.bin", +"resnet101_cnet/layers/layer4-0-conv1.bin", +"resnet101_cnet/layers/layer4-0-conv2.bin", +"resnet101_cnet/layers/layer4-0-conv3.bin", +"resnet101_cnet/layers/layer4-0-downsample-0.bin", -"../tests/resnet101_cnet/layers/layer4-1-conv1.bin", -"../tests/resnet101_cnet/layers/layer4-1-conv2.bin", -"../tests/resnet101_cnet/layers/layer4-1-conv3.bin", +"resnet101_cnet/layers/layer4-1-conv1.bin", +"resnet101_cnet/layers/layer4-1-conv2.bin", +"resnet101_cnet/layers/layer4-1-conv3.bin", -"../tests/resnet101_cnet/layers/layer4-2-conv1.bin", -"../tests/resnet101_cnet/layers/layer4-2-conv2.bin", -"../tests/resnet101_cnet/layers/layer4-2-conv3.bin"}; +"resnet101_cnet/layers/layer4-2-conv1.bin", +"resnet101_cnet/layers/layer4-2-conv2.bin", +"resnet101_cnet/layers/layer4-2-conv3.bin"}; -const char *d_conv1_bin = "../tests/resnet101_cnet/layers/deconv_layers-0-conv_offset_mask.bin"; -const char *deform1_bin = "../tests/resnet101_cnet/layers/deconv_layers-0.bin"; -const char *deconv1_bin = "../tests/resnet101_cnet/layers/deconv_layers-3.bin"; +const char *d_conv1_bin = "resnet101_cnet/layers/deconv_layers-0-conv_offset_mask.bin"; +const char *deform1_bin = "resnet101_cnet/layers/deconv_layers-0.bin"; +const char *deconv1_bin = "resnet101_cnet/layers/deconv_layers-3.bin"; -const char *d_conv2_bin = "../tests/resnet101_cnet/layers/deconv_layers-6-conv_offset_mask.bin"; -const char *deform2_bin = "../tests/resnet101_cnet/layers/deconv_layers-6.bin"; -const char *deconv2_bin = "../tests/resnet101_cnet/layers/deconv_layers-9.bin"; +const char *d_conv2_bin = "resnet101_cnet/layers/deconv_layers-6-conv_offset_mask.bin"; +const char *deform2_bin = "resnet101_cnet/layers/deconv_layers-6.bin"; +const char *deconv2_bin = "resnet101_cnet/layers/deconv_layers-9.bin"; -const char *d_conv3_bin = "../tests/resnet101_cnet/layers/deconv_layers-12-conv_offset_mask.bin"; -const char *deform3_bin = "../tests/resnet101_cnet/layers/deconv_layers-12.bin"; -const char *deconv3_bin = "../tests/resnet101_cnet/layers/deconv_layers-15.bin"; +const char *d_conv3_bin = "resnet101_cnet/layers/deconv_layers-12-conv_offset_mask.bin"; +const char *deform3_bin = "resnet101_cnet/layers/deconv_layers-12.bin"; +const char *deconv3_bin = "resnet101_cnet/layers/deconv_layers-15.bin"; -const char *hm_conv1_bin = "../tests/resnet101_cnet/layers/hm-0.bin"; -const char *hm_conv2_bin = "../tests/resnet101_cnet/layers/hm-2.bin"; -const char *wh_conv1_bin = "../tests/resnet101_cnet/layers/wh-0.bin"; -const char *wh_conv2_bin = "../tests/resnet101_cnet/layers/wh-2.bin"; -const char *reg_conv1_bin = "../tests/resnet101_cnet/layers/reg-0.bin"; -const char *reg_conv2_bin = "../tests/resnet101_cnet/layers/reg-2.bin"; +const char *hm_conv1_bin = "resnet101_cnet/layers/hm-0.bin"; +const char *hm_conv2_bin = "resnet101_cnet/layers/hm-2.bin"; +const char *wh_conv1_bin = "resnet101_cnet/layers/wh-0.bin"; +const char *wh_conv2_bin = "resnet101_cnet/layers/wh-2.bin"; +const char *reg_conv1_bin = "resnet101_cnet/layers/reg-0.bin"; +const char *reg_conv2_bin = "resnet101_cnet/layers/reg-2.bin"; //final -const char *fc_bin = "../tests/resnet101_cnet/layers/fc.bin"; +const char *fc_bin = "resnet101_cnet/layers/fc.bin"; const char *output_bin[]={ -"../tests/resnet101_cnet/debug/hm.bin", -"../tests/resnet101_cnet/debug/wh.bin", -"../tests/resnet101_cnet/debug/reg.bin"}; +"resnet101_cnet/debug/hm.bin", +"resnet101_cnet/debug/wh.bin", +"resnet101_cnet/debug/reg.bin"}; int main() { - downloadWeightsifDoNotExist(input_bin, "../tests/resnet101_cnet", "https://cloud.hipert.unimore.it/s/5BTjHMWBcJk8g3i/download"); + downloadWeightsifDoNotExist(input_bin, "resnet101_cnet", "https://cloud.hipert.unimore.it/s/5BTjHMWBcJk8g3i/download"); // Network layout tk::dnn::dataDim_t dim(1, 3, 512, 512, 1); diff --git a/tests/simple/test_simple.cpp b/tests/simple/test_simple.cpp index 8a65b5c..b2b0441 100644 --- a/tests/simple/test_simple.cpp +++ b/tests/simple/test_simple.cpp @@ -1,11 +1,11 @@ #include #include "tkdnn.h" -const char *input_bin = "../tests/simple/input.bin"; -const char *c0_bin = "../tests/simple/layers/conv1d_1.bin"; -const char *l1_bin = "../tests/simple/layers/bidirectional_1.bin"; -const char *l2_bin = "../tests/simple/layers/bidirectional_2.bin"; -const char *output_bin = "../tests/simple/output.bin"; +const char *input_bin = "simple/input.bin"; +const char *c0_bin = "simple/layers/conv1d_1.bin"; +const char *l1_bin = "simple/layers/bidirectional_1.bin"; +const char *l2_bin = "simple/layers/bidirectional_2.bin"; +const char *output_bin = "simple/output.bin"; int main() { diff --git a/tests/test_rtinference/rtinference.cpp b/tests/test_rtinference/rtinference.cpp index f99d003..1ca9763 100644 --- a/tests/test_rtinference/rtinference.cpp +++ b/tests/test_rtinference/rtinference.cpp @@ -2,33 +2,60 @@ #include "tkdnn.h" #include /* srand, rand */ + int main(int argc, char *argv[]) { if(argc < 2 || !fileExist(argv[1])) FatalError("unable to read serialRT file"); + int BATCH_SIZE = 1; + if(argc >2) + BATCH_SIZE = atoi(argv[2]); + //always same test srand (0); //convert network to tensorRT tk::dnn::NetworkRT netRT(NULL, argv[1]); + + tk::dnn::dataDim_t idim = netRT.input_dim; + tk::dnn::dataDim_t odim = netRT.output_dim; + idim.n = BATCH_SIZE; + odim.n = BATCH_SIZE; + dnnType *input = new float[idim.tot()]; + dnnType *output = new float[odim.tot()]; + dnnType *input_d; + checkCuda( cudaMalloc(&input_d, idim.tot()*sizeof(dnnType))); - dnnType *input = new float[netRT.input_dim.tot()]; - dnnType *output = new float[netRT.input_dim.tot()]; - + int ret_tensorrt = 0; + std::cout<<"Testing with batchsize: "<