diff --git a/llvm/projects/hpvm-tensor-rt/bin/time_jetson_profiles.py b/llvm/projects/hpvm-tensor-rt/bin/time_jetson_profiles.py index 43112395e6aa98d0764a70a7edc072f7d989ea37..d0cde1e016fbbe67f9e98e43546bb3df38971f12 100644 --- a/llvm/projects/hpvm-tensor-rt/bin/time_jetson_profiles.py +++ b/llvm/projects/hpvm-tensor-rt/bin/time_jetson_profiles.py @@ -30,8 +30,13 @@ ResNet50.batch_size = 50 ResNet18 = Benchmark() ResNet18.binary_path = "resnet18_cifar10" #ResNet50.binary_time = 5.1 * 60 # 5.1 mins * 60 secs/min -ResNet18.binary_time = 12.9 # 50 images * 100 batches -ResNet18.batch_time = 12.9 / 50 # Time for batch with 50 images +#ResNet18.binary_time = 12.9 # 50 images * 100 batches +#ResNet18.batch_time = 12.9 / 50 # Time for batch with 50 images + +# Updated numbers based on batch_size = 50 -- NOTE: Underutilizes GPU - this can be better +ResNet18.binary_time = 78 # 50 images * 100 batches +ResNet18.batch_time = 78 / 100 # Time for batch with 50 images + ResNet18.num_layers = 21 ResNet18.data_size = 50 * 3 * 32 * 32 * 4 # *4 for Float32 Data ResNet18.num_classes = 10 @@ -39,6 +44,17 @@ ResNet18.batch_size = 50 +MobileNet = Benchmark() +MobileNet.binary_path = "mobilenet_cifar10" +MobileNet.binary_time = 103.0 # 50 images * 100 batches +MobileNet.batch_time = 103.0 / 100 # Time for batch with 50 images +MobileNet.num_layers = 15 +MobileNet.data_size = 50 * 3 * 32 * 32 * 4 # *4 for Float32 Data +MobileNet.num_classes = 10 +MobileNet.batch_size = 50 + + + VGG16_ImageNet = Benchmark() VGG16_ImageNet.binary_path = "vgg16_imagenet" #VGG16_ImageNet.binary_time = 10.6 * 60 # 5.1 mins * 60 secs/min @@ -52,8 +68,13 @@ VGG16_ImageNet.batch_size = 50 VGG16_CIFAR10 = Benchmark() VGG16_CIFAR10.binary_path = "vgg16_cifar10" -VGG16_CIFAR10.binary_time = 19.0 # 50 images * 100 batches -VGG16_CIFAR10.batch_time = 19.0 /50 +#VGG16_CIFAR10.binary_time = 19.0 # 50 images * 100 batches +#VGG16_CIFAR10.batch_time = 19.0 /50 + +# Updated numbers based on batch_size = 50 -- NOTE: Underutilizes GPU - this can be better +VGG16_CIFAR10.binary_time = 55.7 # 50 images * 100 batches +VGG16_CIFAR10.batch_time = 55.7 / 100 + VGG16_CIFAR10.num_layers = 15 VGG16_CIFAR10.data_size = 50 * 3 * 32 * 32 * 4 VGG16_CIFAR10.num_classes = 10 @@ -61,9 +82,9 @@ VGG16_CIFAR10.batch_size = 50 VGG16_CIFAR100 = Benchmark() -VGG16_CIFAR100.binary_path = "vgg16_cifar10" -VGG16_CIFAR100.binary_time = 19.0 # 50 images * 100 batches -VGG16_CIFAR100.batch_time = 19.0 /50 +VGG16_CIFAR100.binary_path = "vgg16_cifar100" +VGG16_CIFAR100.binary_time = 55.7 # 50 images * 100 batches +VGG16_CIFAR100.batch_time = 55.7 / 100 VGG16_CIFAR100.num_layers = 15 VGG16_CIFAR100.data_size = 50 * 3 * 32 * 32 * 4 VGG16_CIFAR100.num_classes = 100 @@ -73,8 +94,8 @@ VGG16_CIFAR100.batch_size = 50 AlexNet_ImageNet = Benchmark() AlexNet_ImageNet.binary_path = "alexnet_imagenet" -AlexNet_ImageNet.binary_time = 0.66 * 100 -AlexNet_ImageNet.batch_time = 0.66 +AlexNet_ImageNet.binary_time = 0.7 * 100 +AlexNet_ImageNet.batch_time = 0.7 AlexNet_ImageNet.num_layers = 8 AlexNet_ImageNet.data_size = 50 * 3 * 224 * 224 * 4 AlexNet_ImageNet.num_classes = 1000 @@ -84,8 +105,8 @@ AlexNet_ImageNet.batch_size = 50 AlexNet_CIFAR10 = Benchmark() AlexNet_CIFAR10.binary_path = "alexnet_cifar10" -AlexNet_CIFAR10.binary_time = 13.52 -AlexNet_CIFAR10.batch_time = 13.52 / 50 +AlexNet_CIFAR10.binary_time = 23.52 +AlexNet_CIFAR10.batch_time = 23.52 / 100 AlexNet_CIFAR10.num_layers = 6 AlexNet_CIFAR10.data_size = 50 * 3 * 32 * 32 * 4 AlexNet_CIFAR10.num_classes = 10 @@ -94,8 +115,8 @@ AlexNet_CIFAR10.batch_size = 50 AlexNet2_CIFAR10 = Benchmark() AlexNet2_CIFAR10.binary_path = "alexnet2_cifar10" -AlexNet2_CIFAR10.binary_time = 5.6 -AlexNet2_CIFAR10.batch_time = 5.6 / 50 +AlexNet2_CIFAR10.binary_time = 27.1 +AlexNet2_CIFAR10.batch_time = 27.1 / 100 AlexNet2_CIFAR10.num_layers = 7 AlexNet2_CIFAR10.data_size = 50 * 3 * 32 * 32 * 4 AlexNet2_CIFAR10.num_classes = 10 @@ -105,8 +126,8 @@ AlexNet2_CIFAR10.batch_size = 50 LeNet_CIFAR10 = Benchmark() LeNet_CIFAR10.binary_path = "lenet_keras" -LeNet_CIFAR10.binary_time = 1.21 -LeNet_CIFAR10.batch_time = 1.21 / 50 +LeNet_CIFAR10.binary_time = 2.5 +LeNet_CIFAR10.batch_time = 2.5 / 50 LeNet_CIFAR10.num_layers = 4 LeNet_CIFAR10.data_size = 50 * 3 * 32 * 32 * 4 LeNet_CIFAR10.num_classes = 10 @@ -208,6 +229,11 @@ if __name__ == "__main__": resnet18_time = getTimeOnEdge(ResNet18) print ("*** ResNet18 time (mins) = ", resnet18_time) + + mobilenet_time = getTimeOnEdge(MobileNet) + print ("*** MobileNet time (mins) = ", mobilenet_time) + + vgg16_img_time = getTimeOnEdge(VGG16_ImageNet) print ("*** VGG16-Imagenet time (mins) = ", vgg16_img_time)