From 37141558091ec0cfed5283acaaa7ab28fe2a7281 Mon Sep 17 00:00:00 2001 From: Roberto Cavicchioli Date: Wed, 6 Mar 2019 16:39:36 +0100 Subject: [PATCH 1/3] dla --- include/Network.h | 2 +- src/Network.cpp | 10 +++++++++- src/NetworkRT.cpp | 7 +++++++ 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/include/Network.h b/include/Network.h index 958129c..9da5806 100644 --- a/include/Network.h +++ b/include/Network.h @@ -59,7 +59,7 @@ public: dataDim_t input_dim; dataDim_t getOutputDim(); - bool fp16; + bool fp16, dla; }; }} diff --git a/src/Network.cpp b/src/Network.cpp index cade05f..491e32b 100644 --- a/src/Network.cpp +++ b/src/Network.cpp @@ -24,12 +24,20 @@ Network::Network(dataDim_t input_dim) { num_layers = 0; fp16 = false; - if(const char* env_p = std::getenv("TKDNN_MODE")) + dla = false; + if(const char* env_p = std::getenv("TKDNN_MODE")) { if(strcmp(env_p, "FP16") == 0) fp16 = true; + else if(strcmp(env_p, "DLA") == 0) { + dla = true; + fp16 = true; + } + } if(fp16) std::cout<setHalf2Mode(true); } + if(net->dla && builderRT->getNbDLACores() > 0) { + dtRT = DataType::kHALF; + builderRT->setFp16Mode(true); + builderRT->allowGPUFallback(true); + builderRT->setDefaultDeviceType(DeviceType::kDLA); + builderRT->setDLACore(0); + } //add input layer ITensor *input = networkRT->addInput("data", DataType::kFLOAT, From a85367fa222caf43575b1ac0633c9884e5806b61 Mon Sep 17 00:00:00 2001 From: Francesco Gatti Date: Thu, 7 Mar 2019 17:40:24 +0100 Subject: [PATCH 2/3] dla commented --- src/NetworkRT.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/NetworkRT.cpp b/src/NetworkRT.cpp index 2fce5e6..2a73efa 100644 --- a/src/NetworkRT.cpp +++ b/src/NetworkRT.cpp @@ -35,7 +35,7 @@ NetworkRT::NetworkRT(Network *net, const char *name) { builderRT = createInferBuilder(loggerRT); std::cout<<"Float16 support: "<platformHasFastFp16()<<"\n"; std::cout<<"Int8 support: "<platformHasFastInt8()<<"\n"; - std::cout<<"DLAs: "<getNbDLACores()<<"\n"; + //std::cout<<"DLAs: "<getNbDLACores()<<"\n"; networkRT = builderRT->createNetwork(); if(!fileExist(name)) { @@ -51,14 +51,16 @@ NetworkRT::NetworkRT(Network *net, const char *name) { dtRT = DataType::kHALF; builderRT->setHalf2Mode(true); } - if(net->dla && builderRT->getNbDLACores() > 0) { + /* + if(net->dla && builderRT->getNbDLACores() > 0) { dtRT = DataType::kHALF; - builderRT->setFp16Mode(true); - builderRT->allowGPUFallback(true); + builderRT->setFp16Mode(true); + builderRT->allowGPUFallback(true); builderRT->setDefaultDeviceType(DeviceType::kDLA); - builderRT->setDLACore(0); - } - + builderRT->setDLACore(0); + } + */ + //add input layer ITensor *input = networkRT->addInput("data", DataType::kFLOAT, DimsCHW{ dim.c, dim.h, dim.w}); From eef1fd321f54bac992aa362a4e9c1470a84a785c Mon Sep 17 00:00:00 2001 From: mbosi <205839@studenti.unimore.it> Date: Thu, 2 May 2019 14:30:50 +0200 Subject: [PATCH 3/3] added label to demo bounding box visualization --- demo/demo/demo.cpp | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/demo/demo/demo.cpp b/demo/demo/demo.cpp index 5bed784..e57a36e 100644 --- a/demo/demo/demo.cpp +++ b/demo/demo/demo.cpp @@ -11,7 +11,9 @@ #include "Yolo3Detection.h" -bool gRun; +bool gRun; +std::string obj_class[10] {"person", "car", "truck", "bus", "motor", "bike", "rider", "traffic light", "traffic sign", "train"}; + void sig_handler(int signo) { std::cout<<"request gateway stop\n"; @@ -60,15 +62,24 @@ int main(int argc, char *argv[]) { // draw dets for(int i=0; i