Skip to content
Snippets Groups Projects
Commit 8fb26917 authored by kotsifa2's avatar kotsifa2
Browse files

Merge branch 'approx_hpvm' of gitlab.engr.illinois.edu:llvm/hpvm into approx_hpvm

parents df0e44a2 ac33fc78
No related branches found
No related tags found
No related merge requests found
cmake_minimum_required(VERSION 3.5)
set(libsrc profiler.cpp)
set (CMAKE_CXX_STANDARD 11)
add_library(gpu_profiler STATIC ${libsrc})
# NOTES: Batch13 (Baseline) Batch14 - With ErrorSens (10, 25, 35)
# Batch 9: No Error Sens. Min : P3
# Batch 10: No Error Sens + More Runs for Loss1 and Loss2. Min: P3
# Batch 11: Error Sens: Skipping 30% elems in each : Min: P3. More runs in Loss1 (4000) and Loss2 (2000)
# Batch 12: Error Sens: 10, 25, 35, for Loss1, 2, 3, respectively, Min: P3. 1000 Runs for All
# Batch 13: No Error Sens: Equal Runs (1000) for all. Min: P1
# Batch 14: Reruning Batch12 with bugFix!
......@@ -31,15 +39,15 @@ Alexnet1.num_flags = 21
Alexnet1.num_layers = 6
Alexnet1.error_range_1 = 10
Alexnet1.error_range_2 = 13
Alexnet1.start_promise_range = 3
Alexnet1.start_promise_range = 1
Alexnet1.skip_layers = 0
#Alexnet1.skip_layer_str = "0"
Alexnet1.skip_layer_str = "5_0"
Alexnet1.base_dir = "../build_tuner/tuner_results/alexnet_cifar10/"
Alexnet1.result_dir_1 = "../build_tuner/tuner_results/alexnet_cifar10/loss_1/batch12"
Alexnet1.result_dir_2 = "../build_tuner/tuner_results/alexnet_cifar10/loss_2/batch12"
Alexnet1.result_dir_3 = "../build_tuner/tuner_results/alexnet_cifar10/loss_3/batch12"
Alexnet1.result_dir_1 = "../build_tuner/tuner_results/alexnet_cifar10/loss_1/batch14"
Alexnet1.result_dir_2 = "../build_tuner/tuner_results/alexnet_cifar10/loss_2/batch14"
Alexnet1.result_dir_3 = "../build_tuner/tuner_results/alexnet_cifar10/loss_3/batch14"
Alexnet1.tensor_desc_file = "tuner_results/alexnet_cifar10/alexnet_tensors.txt"
Alexnet1.layer_file = "tuner_results/alexnet_cifar10/alexnet_layers.txt"
......@@ -65,14 +73,14 @@ Alexnet2.num_flags = 23
Alexnet2.num_layers = 7
Alexnet2.error_range_1 = 10
Alexnet2.error_range_2 = 13
Alexnet2.start_promise_range = 3
Alexnet2.start_promise_range = 1
#Alexnet2.skip_layer_str = "0"
Alexnet2.skip_layer_str = "6_1_0"
Alexnet2.base_dir = "../build_tuner/tuner_results/alexnet2_cifar10/"
Alexnet2.result_dir_1 = "../build_tuner/tuner_results/alexnet2_cifar10/loss_1/batch12"
Alexnet2.result_dir_2 = "../build_tuner/tuner_results/alexnet2_cifar10/loss_2/batch12"
Alexnet2.result_dir_3 = "../build_tuner/tuner_results/alexnet2_cifar10/loss_3/batch12"
Alexnet2.result_dir_1 = "../build_tuner/tuner_results/alexnet2_cifar10/loss_1/batch14"
Alexnet2.result_dir_2 = "../build_tuner/tuner_results/alexnet2_cifar10/loss_2/batch14"
Alexnet2.result_dir_3 = "../build_tuner/tuner_results/alexnet2_cifar10/loss_3/batch14"
Alexnet2.tensor_desc_file = "tuner_results/alexnet2_cifar10/alexnet2_tensors.txt"
Alexnet2.layer_file = "tuner_results/alexnet2_cifar10/alexnet2_layers.txt"
Alexnet2.cost_file = "../build_tuner/tuner_results/alexnet2_cifar10/op_cost.txt"
......@@ -95,14 +103,14 @@ Alexnet3.num_flags = 50
Alexnet3.num_layers = 15
Alexnet3.error_range_1 = 9
Alexnet3.error_range_2 = 11
Alexnet3.start_promise_range = 3
Alexnet3.start_promise_range = 1
#Alexnet3.skip_layer_str = "0"
Alexnet3.skip_layer_str = "14_3_4_1_6"
Alexnet3.base_dir = "../build_tuner/tuner_results/vgg16_cifar10/"
Alexnet3.result_dir_1 = "../build_tuner/tuner_results/vgg16_cifar10/loss_1/batch12"
Alexnet3.result_dir_2 = "../build_tuner/tuner_results/vgg16_cifar10/loss_2/batch12"
Alexnet3.result_dir_3 = "../build_tuner/tuner_results/vgg16_cifar10/loss_3/batch12"
Alexnet3.result_dir_1 = "../build_tuner/tuner_results/vgg16_cifar10/loss_1/batch14"
Alexnet3.result_dir_2 = "../build_tuner/tuner_results/vgg16_cifar10/loss_2/batch14"
Alexnet3.result_dir_3 = "../build_tuner/tuner_results/vgg16_cifar10/loss_3/batch14"
Alexnet3.tensor_desc_file = "tuner_results/vgg16_cifar10/vgg16_tensors.txt"
Alexnet3.layer_file = "tuner_results/vgg16_cifar10/vgg16_layers.txt"
......@@ -128,13 +136,13 @@ Alexnet4.num_flags = 73
Alexnet4.num_layers = 22
Alexnet4.error_range_1 = 7
Alexnet4.error_range_2 = 9
Alexnet4.start_promise_range = 5
Alexnet4.start_promise_range = 1
#Alexnet4.skip_layer_str = "0"
Alexnet4.skip_layer_str = "0_1_2_14_15_17_18_21"
Alexnet4.base_dir = "../build_tuner/tuner_results/resnet18_cifar10/"
Alexnet4.result_dir_1 = "../build_tuner/tuner_results/resnet18_cifar10/loss_1/batch12"
Alexnet4.result_dir_2 = "../build_tuner/tuner_results/resnet18_cifar10/loss_2/batch12"
Alexnet4.result_dir_3 = "../build_tuner/tuner_results/resnet18_cifar10/loss_3/batch12"
Alexnet4.result_dir_1 = "../build_tuner/tuner_results/resnet18_cifar10/loss_1/batch14"
Alexnet4.result_dir_2 = "../build_tuner/tuner_results/resnet18_cifar10/loss_2/batch14"
Alexnet4.result_dir_3 = "../build_tuner/tuner_results/resnet18_cifar10/loss_3/batch14"
Alexnet4.tensor_desc_file = "tuner_results/resnet18_cifar10/resnet_tensors.txt"
Alexnet4.layer_file = "tuner_results/resnet18_cifar10/resnet_layers.txt"
Alexnet4.cost_file = "../build_tuner/tuner_results/resnet18_cifar10/op_cost.txt"
......@@ -161,13 +169,13 @@ Alexnet5.num_flags = 50
Alexnet5.num_layers = 15
Alexnet5.error_range_1 = 9
Alexnet5.error_range_2 = 11
Alexnet5.start_promise_range = 3
Alexnet5.start_promise_range = 1
#Alexnet5.skip_layer_str = "0"
Alexnet5.skip_layer_str = "0_1_2_3_4"
Alexnet5.base_dir = "../build_tuner/tuner_results/vgg16_cifar100/"
Alexnet5.result_dir_1 = "../build_tuner/tuner_results/vgg16_cifar100/loss_1/batch12"
Alexnet5.result_dir_2 = "../build_tuner/tuner_results/vgg16_cifar100/loss_2/batch12"
Alexnet5.result_dir_3 = "../build_tuner/tuner_results/vgg16_cifar100/loss_3/batch12"
Alexnet5.result_dir_1 = "../build_tuner/tuner_results/vgg16_cifar100/loss_1/batch14"
Alexnet5.result_dir_2 = "../build_tuner/tuner_results/vgg16_cifar100/loss_2/batch14"
Alexnet5.result_dir_3 = "../build_tuner/tuner_results/vgg16_cifar100/loss_3/batch14"
Alexnet5.tensor_desc_file = "../build_tuner/tuner_results/vgg16_cifar100/vgg16_tensors.txt"
Alexnet5.layer_file = "../build_tuner/tuner_results/vgg16_cifar100/vgg16_layers.txt"
......@@ -197,9 +205,9 @@ Alexnet6.start_promise_range = 1
Alexnet6.skip_layer_str = "0"
Alexnet6.base_dir = "../build_tuner/tuner_results/lenet_keras/"
Alexnet6.result_dir_1 = "../build_tuner/tuner_results/lenet_keras/loss_1/batch12"
Alexnet6.result_dir_2 = "../build_tuner/tuner_results/lenet_keras/loss_2/batch12"
Alexnet6.result_dir_3 = "../build_tuner/tuner_results/lenet_keras/loss_3/batch12"
Alexnet6.result_dir_1 = "../build_tuner/tuner_results/lenet_keras/loss_1/batch14"
Alexnet6.result_dir_2 = "../build_tuner/tuner_results/lenet_keras/loss_2/batch14"
Alexnet6.result_dir_3 = "../build_tuner/tuner_results/lenet_keras/loss_3/batch14"
Alexnet6.tensor_desc_file = "tuner_results/lenet_keras/lenet_tensors.txt"
Alexnet6.layer_file = "tuner_results/lenet_keras/lenet_layers.txt"
......@@ -226,13 +234,13 @@ Alexnet7.num_flags = 85
Alexnet7.num_layers = 15
Alexnet7.error_range_1 = 7
Alexnet7.error_range_2 = 8
Alexnet7.start_promise_range = 3
Alexnet7.start_promise_range = 1
#Alexnet7.skip_layer_str = "0"
Alexnet7.skip_layer_str = "1_14_0_6_2"
Alexnet7.base_dir = "../build_tuner/tuner_results/mobilenet/"
Alexnet7.result_dir_1 = "../build_tuner/tuner_results/mobilenet/loss_1/batch12"
Alexnet7.result_dir_2 = "../build_tuner/tuner_results/mobilenet/loss_2/batch12"
Alexnet7.result_dir_3 = "../build_tuner/tuner_results/mobilenet/loss_3/batch12"
Alexnet7.result_dir_1 = "../build_tuner/tuner_results/mobilenet/loss_1/batch14"
Alexnet7.result_dir_2 = "../build_tuner/tuner_results/mobilenet/loss_2/batch14"
Alexnet7.result_dir_3 = "../build_tuner/tuner_results/mobilenet/loss_3/batch14"
Alexnet7.tensor_desc_file = "tuner_results/mobilenet/mobilenet_ops.txt"
Alexnet7.layer_file = "tuner_results/mobilenet/mobilenet_layer_comp.txt"
......@@ -258,15 +266,13 @@ Alexnet8.num_flags = 42
Alexnet8.num_layers = 8
Alexnet8.error_range_1 = 10
Alexnet8.error_range_2 = 12
Alexnet8.start_promise_range = 3
Alexnet8.start_promise_range = 1
#Alexnet8.skip_layer_str = "0"
Alexnet8.skip_layer_str = "7_0_1"
Alexnet8.base_dir = "../build_tuner/tuner_results/mobilenet_shallow/"
#Alexnet8.result_dir_3 = "../build_tuner/tuner_results/mobilenet_shallow/loss_3/batch7"
#Alexnet8.result_dir_1 = "../build_tuner/tuner_results/mobilenet_shallow/loss_1/batch10"
Alexnet8.result_dir_1 = "../build_tuner/tuner_results/mobilenet_shallow/loss_1/batch12"
Alexnet8.result_dir_2 = "../build_tuner/tuner_results/mobilenet_shallow/loss_2/batch12"
Alexnet8.result_dir_3 = "../build_tuner/tuner_results/mobilenet_shallow/loss_3/batch12"
Alexnet8.result_dir_1 = "../build_tuner/tuner_results/mobilenet_shallow/loss_1/batch14"
Alexnet8.result_dir_2 = "../build_tuner/tuner_results/mobilenet_shallow/loss_2/batch14"
Alexnet8.result_dir_3 = "../build_tuner/tuner_results/mobilenet_shallow/loss_3/batch14"
Alexnet8.tensor_desc_file = "../build_tuner/tuner_results/mobilenet_shallow/mobilenet_shallow_ops.txt"
Alexnet8.layer_file = "../build_tuner/tuner_results/mobilenet_shallow/mobilenet_shallow_layer_comp.txt"
......
......@@ -284,9 +284,13 @@ def readLayerCosts(cost_file):
disable_skipping = False
def select_skip_layers(Bench, percent_to_skip):
if disable_skipping:
return "0"
result_dir = Bench.base_dir
layer_file = Bench.layer_file
......@@ -340,7 +344,7 @@ if __name__ == "__main__":
AlexNet = bench_tuner_data["alexnet_cifar10"]
skip_str = select_skip_layers(AlexNet, 15)
skip_str = select_skip_layers(AlexNet, 10)
print ("AlexNet skip_str = ", skip_str)
......@@ -350,7 +354,7 @@ if __name__ == "__main__":
VGG16 = bench_tuner_data["vgg16_cifar10"]
skip_str = select_skip_layers(VGG16, 30)
skip_str = select_skip_layers(VGG16, 15)
print ("VGG16 skip_str = ", skip_str)
......@@ -370,5 +374,5 @@ if __name__ == "__main__":
MobileNet_SH = bench_tuner_data["mobilenet_shallow"]
skip_str = select_skip_layers(MobileNet_SH, 25)
skip_str = select_skip_layers(MobileNet_SH, 15)
print ("MobileNet_SH skip_str = ", skip_str)
......@@ -56,14 +56,14 @@ def runPromiseBench(Bench):
#tuner_runs2 = Bench.autotuner_runs * 2
#tuner_runs3 = Bench.autotuner_runs * 4
skip_layers1 = "0_" + select_skip_layers(Bench, 10)
skip_layers1 = "0_" + select_skip_layers(Bench, 35)
skip_layers2 = "0_" + select_skip_layers(Bench, 25)
skip_layers3 = "0_" + select_skip_layers(Bench, 40)
skip_layers3 = "0_" + select_skip_layers(Bench, 10)
runPromiseTunerCmd(Bench, dir_prefix, Bench.result_dir_3, 2.55, tuner_runs1, skip_layers3)
runPromiseTunerCmd(Bench, dir_prefix, Bench.result_dir_2, 1.7, tuner_runs1, skip_layers2)
runPromiseTunerCmd(Bench, dir_prefix, Bench.result_dir_1, 0.85, tuner_runs1, skip_layers1)
runPromiseTunerCmd(Bench, dir_prefix, Bench.result_dir_2, 1.7, tuner_runs1, skip_layers2)
runPromiseTunerCmd(Bench, dir_prefix, Bench.result_dir_3, 2.55, tuner_runs1, skip_layers3)
"""
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment