diff --git a/hpvm/test/CMakeLists.txt b/hpvm/test/CMakeLists.txt
index 6f7ea59b011d9f58804a6ad06d32faee272bbb7e..5ffc073164b4d3d586725ce15665faaa5374c4b7 100644
--- a/hpvm/test/CMakeLists.txt
+++ b/hpvm/test/CMakeLists.txt
@@ -161,4 +161,4 @@ add_custom_target(hpvm-check)
 add_dependencies(hpvm-check check-hpvm)
 set_target_properties(hpvm-check PROPERTIES FOLDER "Tests")
 
-add_subdirectory(dnn_benchmarks)
+add_subdirectory(dnn_benchmarks/hpvm-c)
diff --git a/hpvm/test/dnn_benchmarks/CMakeLists.txt b/hpvm/test/dnn_benchmarks/hpvm-c/CMakeLists.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/CMakeLists.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/CMakeLists.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/alexnet/alexnet.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet/alexnet.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/alexnet/alexnet.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet/alexnet.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/alexnet/alexnet_loop.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet/alexnet_loop.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/alexnet/alexnet_loop.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet/alexnet_loop.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/alexnet/data/quant_ranges_rt.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet/data/quant_ranges_rt.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/alexnet/data/quant_ranges_rt.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet/data/quant_ranges_rt.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/alexnet/data/tuner_confs.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet/data/tuner_confs.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/alexnet/data/tuner_confs.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet/data/tuner_confs.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/alexnet2/alexnet2.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet2/alexnet2.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/alexnet2/alexnet2.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet2/alexnet2.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/alexnet2/alexnet2_loop.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet2/alexnet2_loop.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/alexnet2/alexnet2_loop.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet2/alexnet2_loop.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/alexnet2/data/quant_ranges_rt.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet2/data/quant_ranges_rt.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/alexnet2/data/quant_ranges_rt.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet2/data/quant_ranges_rt.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/alexnet2/data/tuner_confs.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet2/data/tuner_confs.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/alexnet2/data/tuner_confs.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet2/data/tuner_confs.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/alexnet_imagenet/alexnet_imagenet.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet_imagenet/alexnet_imagenet.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/alexnet_imagenet/alexnet_imagenet.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet_imagenet/alexnet_imagenet.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/alexnet_imagenet/alexnet_imagenet_loop.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet_imagenet/alexnet_imagenet_loop.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/alexnet_imagenet/alexnet_imagenet_loop.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet_imagenet/alexnet_imagenet_loop.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/alexnet_imagenet/data/quant_ranges_rt.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet_imagenet/data/quant_ranges_rt.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/alexnet_imagenet/data/quant_ranges_rt.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet_imagenet/data/quant_ranges_rt.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/alexnet_imagenet/data/tuner_confs.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet_imagenet/data/tuner_confs.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/alexnet_imagenet/data/tuner_confs.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/alexnet_imagenet/data/tuner_confs.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/lenet_mnist/data/quant_ranges_rt.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/lenet_mnist/data/quant_ranges_rt.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/lenet_mnist/data/quant_ranges_rt.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/lenet_mnist/data/quant_ranges_rt.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/lenet_mnist/data/tuner_confs.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/lenet_mnist/data/tuner_confs.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/lenet_mnist/data/tuner_confs.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/lenet_mnist/data/tuner_confs.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/lenet_mnist/lenet_mnist.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/lenet_mnist/lenet_mnist.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/lenet_mnist/lenet_mnist.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/lenet_mnist/lenet_mnist.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/lenet_mnist/lenet_mnist_loop.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/lenet_mnist/lenet_mnist_loop.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/lenet_mnist/lenet_mnist_loop.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/lenet_mnist/lenet_mnist_loop.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/mobilenet/data/quant_ranges_rt.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/mobilenet/data/quant_ranges_rt.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/mobilenet/data/quant_ranges_rt.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/mobilenet/data/quant_ranges_rt.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/mobilenet/data/tuner_confs.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/mobilenet/data/tuner_confs.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/mobilenet/data/tuner_confs.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/mobilenet/data/tuner_confs.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/mobilenet/mobilenet.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/mobilenet/mobilenet.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/mobilenet/mobilenet.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/mobilenet/mobilenet.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/mobilenet/mobilenet_loop.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/mobilenet/mobilenet_loop.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/mobilenet/mobilenet_loop.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/mobilenet/mobilenet_loop.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/resnet18/data/quant_ranges_rt.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet18/data/quant_ranges_rt.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/resnet18/data/quant_ranges_rt.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet18/data/quant_ranges_rt.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/resnet18/data/tuner_confs.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet18/data/tuner_confs.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/resnet18/data/tuner_confs.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet18/data/tuner_confs.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/resnet18/resnet18.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet18/resnet18.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/resnet18/resnet18.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet18/resnet18.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/resnet18/resnet18_loop.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet18/resnet18_loop.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/resnet18/resnet18_loop.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet18/resnet18_loop.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/resnet50_imagenet/data/quant_ranges_rt.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet50_imagenet/data/quant_ranges_rt.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/resnet50_imagenet/data/quant_ranges_rt.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet50_imagenet/data/quant_ranges_rt.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/resnet50_imagenet/data/tuner_confs.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet50_imagenet/data/tuner_confs.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/resnet50_imagenet/data/tuner_confs.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet50_imagenet/data/tuner_confs.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/resnet50_imagenet/resnet50_imagenet.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet50_imagenet/resnet50_imagenet.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/resnet50_imagenet/resnet50_imagenet.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet50_imagenet/resnet50_imagenet.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/resnet50_imagenet/resnet50_imagenet_loop.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet50_imagenet/resnet50_imagenet_loop.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/resnet50_imagenet/resnet50_imagenet_loop.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/resnet50_imagenet/resnet50_imagenet_loop.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar10/data/quant_ranges_rt.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar10/data/quant_ranges_rt.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar10/data/quant_ranges_rt.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar10/data/quant_ranges_rt.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar10/data/tuner_confs.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar10/data/tuner_confs.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar10/data/tuner_confs.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar10/data/tuner_confs.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar10/vgg16_cifar10.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar10/vgg16_cifar10.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar10/vgg16_cifar10.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar10/vgg16_cifar10.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar10/vgg16_cifar10_loop.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar10/vgg16_cifar10_loop.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar10/vgg16_cifar10_loop.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar10/vgg16_cifar10_loop.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar100/data/quant_ranges_rt.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar100/data/quant_ranges_rt.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar100/data/quant_ranges_rt.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar100/data/quant_ranges_rt.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar100/data/tuner_confs.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar100/data/tuner_confs.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar100/data/tuner_confs.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar100/data/tuner_confs.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar100/vgg16_cifar100.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar100/vgg16_cifar100.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar100/vgg16_cifar100.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar100/vgg16_cifar100.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar100/vgg16_cifar100_loop.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar100/vgg16_cifar100_loop.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/vgg16_cifar100/vgg16_cifar100_loop.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_cifar100/vgg16_cifar100_loop.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/vgg16_imagenet/data/quant_ranges_rt.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_imagenet/data/quant_ranges_rt.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/vgg16_imagenet/data/quant_ranges_rt.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_imagenet/data/quant_ranges_rt.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/vgg16_imagenet/data/tuner_confs.txt b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_imagenet/data/tuner_confs.txt
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/vgg16_imagenet/data/tuner_confs.txt
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_imagenet/data/tuner_confs.txt
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/vgg16_imagenet/vgg16_imagenet.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_imagenet/vgg16_imagenet.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/vgg16_imagenet/vgg16_imagenet.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_imagenet/vgg16_imagenet.cpp
diff --git a/hpvm/test/dnn_benchmarks/benchmarks/vgg16_imagenet/vgg16_imagenet_loop.cpp b/hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_imagenet/vgg16_imagenet_loop.cpp
similarity index 100%
rename from hpvm/test/dnn_benchmarks/benchmarks/vgg16_imagenet/vgg16_imagenet_loop.cpp
rename to hpvm/test/dnn_benchmarks/hpvm-c/benchmarks/vgg16_imagenet/vgg16_imagenet_loop.cpp
diff --git a/hpvm/test/dnn_benchmarks/include/config.h.in b/hpvm/test/dnn_benchmarks/hpvm-c/include/config.h.in
similarity index 100%
rename from hpvm/test/dnn_benchmarks/include/config.h.in
rename to hpvm/test/dnn_benchmarks/hpvm-c/include/config.h.in
diff --git a/hpvm/test/dnn_benchmarks/include/hpvm.h b/hpvm/test/dnn_benchmarks/hpvm-c/include/hpvm.h
similarity index 100%
rename from hpvm/test/dnn_benchmarks/include/hpvm.h
rename to hpvm/test/dnn_benchmarks/hpvm-c/include/hpvm.h
diff --git a/hpvm/test/dnn_benchmarks/include/tensorTypes.h b/hpvm/test/dnn_benchmarks/hpvm-c/include/tensorTypes.h
similarity index 100%
rename from hpvm/test/dnn_benchmarks/include/tensorTypes.h
rename to hpvm/test/dnn_benchmarks/hpvm-c/include/tensorTypes.h
diff --git a/hpvm/test/dnn_benchmarks/include/tensorUtils.h b/hpvm/test/dnn_benchmarks/hpvm-c/include/tensorUtils.h
similarity index 100%
rename from hpvm/test/dnn_benchmarks/include/tensorUtils.h
rename to hpvm/test/dnn_benchmarks/hpvm-c/include/tensorUtils.h
diff --git a/hpvm/test/dnn_benchmarks/keras/.gitkeep b/hpvm/test/dnn_benchmarks/keras/.gitkeep
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/hpvm/test/dnn_benchmarks/pytorch/.gitkeep b/hpvm/test/dnn_benchmarks/pytorch/.gitkeep
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391