Add TKDNN_MODE variable to the name of the network.
This commit permits to obtain different .rt files for different precision optimizations of the same network. Signed-off-by: Davide Sapienza <sapienza.dav@gmail.com>
This commit is contained in:
@@ -47,6 +47,7 @@ public:
|
||||
|
||||
bool addLayer(Layer *l);
|
||||
void print();
|
||||
const char *getNetworkRTName(char *network_name);
|
||||
|
||||
cudnnDataType_t dataType;
|
||||
cudnnTensorFormat_t tensorFormat;
|
||||
|
||||
@@ -114,6 +114,34 @@ void Network::print() {
|
||||
printCenteredTitle("", '=', 60);
|
||||
std::cout<<"\n";
|
||||
}
|
||||
const char *Network::getNetworkRTName(char *network_name){
|
||||
int network_name_len = strlen(network_name);
|
||||
char *RTName = (char *)malloc((network_name_len + 9)*sizeof(char));
|
||||
if (fp16){
|
||||
strcat(RTName, network_name);
|
||||
strcat(RTName, "_fp16.rt");
|
||||
RTName[network_name_len + 7] = '\0';
|
||||
}
|
||||
else if (dla){
|
||||
strcat(RTName, network_name);
|
||||
strcat(RTName, "_dla.rt");
|
||||
RTName[network_name_len + 6] = '\0';
|
||||
}
|
||||
|
||||
else if (int8){
|
||||
strcat(RTName, network_name);
|
||||
strcat(RTName, "_int8.rt");
|
||||
RTName[network_name_len + 8] = '\0';
|
||||
}
|
||||
|
||||
else{
|
||||
strcat(RTName, network_name);
|
||||
strcat(RTName, "_fp32.rt");
|
||||
RTName[network_name_len + 8] = '\0';
|
||||
}
|
||||
|
||||
return RTName;
|
||||
}
|
||||
|
||||
|
||||
}}
|
||||
|
||||
@@ -475,7 +475,7 @@ int main()
|
||||
net.print();
|
||||
|
||||
// //convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "csresnext50-panet-spp.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("csresnext50-panet-spp"));
|
||||
|
||||
// the network have 3 outputs
|
||||
tk::dnn::dataDim_t out_dim[3];
|
||||
|
||||
@@ -301,7 +301,7 @@ int main()
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "dla34.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("dla34"));
|
||||
|
||||
|
||||
tk::dnn::dataDim_t out_dim;
|
||||
|
||||
@@ -477,7 +477,7 @@ int main()
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "dla34_cnet.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("dla34_cnet"));
|
||||
|
||||
tk::dnn::dataDim_t dim1 = dim; //input dim
|
||||
printCenteredTitle(" CUDNN inference ", '=', 30);
|
||||
|
||||
@@ -22,7 +22,7 @@ int main() {
|
||||
tk::dnn::Dense l6(&net, 10, d3_bin);
|
||||
tk::dnn::Softmax l7(&net);
|
||||
|
||||
tk::dnn::NetworkRT netRT(&net, "mnist.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("mnist"));
|
||||
|
||||
// Load input
|
||||
dnnType *data;
|
||||
|
||||
@@ -467,7 +467,7 @@ int main()
|
||||
net.print();
|
||||
|
||||
// convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "mobilenetv2ssd.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("mobilenetv2ssd"));
|
||||
|
||||
tk::dnn::dataDim_t dim1 = dim; //input dim
|
||||
printCenteredTitle(" CUDNN inference ", '=', 30);
|
||||
|
||||
@@ -466,7 +466,7 @@ int main()
|
||||
net.print();
|
||||
|
||||
// convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "mobilenetv2ssd512.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("mobilenetv2ssd512"));
|
||||
|
||||
tk::dnn::dataDim_t dim1 = dim; //input dim
|
||||
printCenteredTitle(" CUDNN inference ", '=', 30);
|
||||
|
||||
@@ -290,7 +290,7 @@ int main()
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "resnet101.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("resnet101"));
|
||||
|
||||
|
||||
tk::dnn::dataDim_t out_dim;
|
||||
|
||||
@@ -350,7 +350,7 @@ int main()
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "resnet101_cnet.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("resnet101_cnet"));
|
||||
|
||||
|
||||
tk::dnn::dataDim_t dim1 = dim; //input dim
|
||||
|
||||
@@ -32,7 +32,7 @@ int main() {
|
||||
std::cout<<"\n";
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "simple.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("simple"));
|
||||
|
||||
dnnType *out_data, *out_data2; // cudnn output, tensorRT output
|
||||
|
||||
|
||||
+1
-1
@@ -112,7 +112,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo"));
|
||||
|
||||
dnnType *out_data, *out_data2; // cudnn output, tensorRT output
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo3.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo3"));
|
||||
|
||||
// the network have 3 outputs
|
||||
tk::dnn::dataDim_t out_dim[3];
|
||||
|
||||
@@ -31,7 +31,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo3_512.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo3_512"));
|
||||
|
||||
// the network have 3 outputs
|
||||
tk::dnn::dataDim_t out_dim[3];
|
||||
|
||||
@@ -29,7 +29,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo3_512tp.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo3_512tp"));
|
||||
|
||||
// the network have 3 outputs
|
||||
tk::dnn::dataDim_t out_dim[3];
|
||||
|
||||
@@ -31,7 +31,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo3_berkeley.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo3_berkeley"));
|
||||
|
||||
// the network have 3 outputs
|
||||
tk::dnn::dataDim_t out_dim[3];
|
||||
|
||||
@@ -24,7 +24,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo3_coco4.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo3_coco4"));
|
||||
|
||||
// the network have 3 outputs
|
||||
tk::dnn::dataDim_t out_dim[3];
|
||||
|
||||
@@ -31,7 +31,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo3_flir.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo3_flir"));
|
||||
|
||||
// the network have 3 outputs
|
||||
tk::dnn::dataDim_t out_dim[3];
|
||||
|
||||
@@ -92,7 +92,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
// convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo3_tiny.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo3_tiny"));
|
||||
|
||||
dnnType *out_data, *out_data2; // cudnn output, tensorRT output
|
||||
|
||||
|
||||
@@ -89,7 +89,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
// convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo3_tiny512.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo3_tiny512"));
|
||||
|
||||
dnnType *out_data, *out_data2; // cudnn output, tensorRT output
|
||||
|
||||
|
||||
@@ -89,7 +89,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
// convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo3_tiny512tp.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo3_tiny512tp"));
|
||||
|
||||
dnnType *out_data, *out_data2; // cudnn output, tensorRT output
|
||||
|
||||
|
||||
@@ -110,7 +110,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo_224.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo_224"));
|
||||
|
||||
dnnType *out_data, *out_data2; // cudnn output, tensorRT output
|
||||
|
||||
|
||||
@@ -110,7 +110,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo_berkeley.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo_berkeley"));
|
||||
|
||||
dnnType *out_data, *out_data2; // cudnn output, tensorRT output
|
||||
|
||||
|
||||
@@ -110,7 +110,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo_relu.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo_relu"));
|
||||
|
||||
dnnType *out_data, *out_data2; // cudnn output, tensorRT output
|
||||
|
||||
|
||||
@@ -62,7 +62,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo_tiny.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo_tiny"));
|
||||
|
||||
dnnType *out_data, *out_data2; // cudnn output, tensorRT output
|
||||
|
||||
|
||||
@@ -112,7 +112,7 @@ int main() {
|
||||
net.print();
|
||||
|
||||
//convert network to tensorRT
|
||||
tk::dnn::NetworkRT netRT(&net, "yolo_voc.rt");
|
||||
tk::dnn::NetworkRT netRT(&net, net.getNetworkRTName("yolo_voc"));
|
||||
|
||||
dnnType *out_data, *out_data2; // cudnn output, tensorRT output
|
||||
|
||||
|
||||
Reference in New Issue
Block a user