visualization_utils/plotting.py [969:1082]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    budget_alpha = 1
    non_optimization_alpha = .1
    budget_marker = "_"
    regu_marker = "."
    budget_marker_size = 4
    regu_marker_size = 1


    #itrColNum = all_res_column_name_number["iteration cnt"]
    #distColNum = all_res_column_name_number["dist_to_goal_non_cost"]
    trueNum  =  all_res_column_name_number["move validity"]
    move_name_number =  all_res_column_name_number["move name"]


    # experiment_names
    experiment_names = []
    file_full_addr_list = []
    for dir_name in input_dir_names:
        file_full_addr = os.path.join(dir_name, "result_summary/FARSI_simple_run_0_1_all_reults.csv")
        file_full_addr_list.append(file_full_addr)
        experiment_name = get_experiments_name(file_full_addr, res_column_name_number)
        experiment_names.append(experiment_name)

    #color_values = ["r","b","y","black","brown","purple"]
    color_values = {}
    color_values["latency_edge_detection"] = color_values["best_des_so_far_latency_edge_detection"] =color_values["latency_budget_edge_detection"] = matplotlib.colors.to_rgba("red")
    color_values["latency_hpvm_cava"] =color_values["best_des_so_far_latency_hpvm_cava"] = color_values["latency_budget_hpvm_cava"] = matplotlib.colors.to_rgba("magenta")
    color_values["latency_audio_decoder"] = color_values["best_des_so_far_latency_audio_decoder"] =color_values["latency_budget_audio_decoder"] = matplotlib.colors.to_rgba("orange")
    color_values["area_non_dram"] =color_values["best_des_so_far_area_non_dram"] = color_values["area_budget"] =  matplotlib.colors.to_rgba("forestgreen")
    color_values["brown"] = (1,0,0,1)
    color_values["power"] = color_values["best_des_so_far_power"] =color_values["power_budget"] = matplotlib.colors.to_rgba("mediumblue")

    color_values["latency_budget_edge_detection"] = matplotlib.colors.to_rgba("white")
    color_values["latency_budget_hpvm_cava"] = matplotlib.colors.to_rgba("white")
    color_values["latency_budget_audio_decoder"] = matplotlib.colors.to_rgba("white")
    color_values["area_budget"] =  matplotlib.colors.to_rgba("white")
    color_values["power_budget"] = matplotlib.colors.to_rgba("white")



    column_name_color_val_dict = {"best_des_so_far_power":"purple", "power_budget":"purple","best_des_so_far_area_non_dram":"blue", "area_budget":"blue",
                                  "latency_budget_hpvm_cava":"orange", "latency_budget_audio_decoder":"yellow", "latency_budget_edge_detection":"red",
                                  "best_des_so_far_latency_hpvm_cava":"orange", "best_des_so_far_latency_audio_decoder": "yellow","best_des_so_far_latency_edge_detection": "red",
                                  "latency_budget":"white"
                                  }



    """
    column_name_color_val_dict = {"power":"purple", "power_budget":"purple","area_non_dram":"blue", "area_budget":"blue",
                                  "latency_budget_hpvm_cava":"orange", "latency_budget_audio_decoder":"yellow", "latency_budget_edge_detection":"red",
                                  "latency_hpvm_cava":"orange", "latency_audio_decoder": "yellow","latency_edge_detection": "red",
                                  "latency_budget":"white"
                                  }
    """

    axis_font = {'size': '20'}
    fontSize = 20
    x_column_name = "iteration cnt"
    #y_column_name_list = ["power", "area_non_dram", "latency", "latency_budget", "power_budget","area_budget"]
    y_column_name_list = ["power", "area_non_dram", "latency"]

    experiment_column_value = {}
    for file_full_addr in file_full_addr_list:
        experiment_name = get_experiments_name(file_full_addr, res_column_name_number)
        experiment_column_value[experiment_name] = {}
        for y_column_name in y_column_name_list:
            if "budget"  in y_column_name :
                prefix = ""
            else:
                prefix = "best_des_so_far_"
            y_column_name = prefix+y_column_name
            y_column_number = res_column_name_number[y_column_name]
            x_column_number = res_column_name_number[x_column_name]
            #dis_to_goal_column_number = res_column_name_number["dist_to_goal_non_cost"]
            #ref_des_dis_to_goal_column_number = res_column_name_number["ref_des_dist_to_goal_non_cost"]

            if not y_column_name == prefix+"latency":
                experiment_column_value[experiment_name][y_column_name] = []


            with open(file_full_addr, newline='') as csvfile:
                resultReader = csv.reader(csvfile, delimiter=',', quotechar='|')
                for i, row in enumerate(resultReader):
                    if i > 1:
                        if row[trueNum] == "FALSE" or row[move_name_number]=="identity":
                            continue
                        metric_chosen  = row[res_column_name_number["transformation_metric"]]
                        workload_chosen  = row[res_column_name_number["workload"]]
                        if "budget" in y_column_name:
                            alpha = budget_alpha
                        elif metric_chosen in y_column_name :
                            alpha = 1
                        else:
                            alpha = non_optimization_alpha

                        col_value = row[y_column_number]
                        if ";" in col_value:
                            col_value = col_value[:-1]
                        col_values = col_value.split(";")
                        for col_val in col_values:
                            if "=" in col_val:
                                if "budget" in y_column_name:
                                    alpha = budget_alpha
                                elif workload_chosen in col_val:
                                    alpha = 1
                                else:
                                    alpha = non_optimization_alpha
                                val_splitted = col_val.split("=")
                                value_to_add = (float(row[x_column_number]), (val_splitted[0], val_splitted[1]), alpha)
                            else:
                                value_to_add = (float(row[x_column_number]), col_val, alpha)

                            if y_column_name in [prefix+"latency", prefix+"latency_budget"] :
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



visualization_utils/plotting.py [1224:1337]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    budget_alpha = 1
    non_optimization_alpha = .1
    budget_marker = "_"
    regu_marker = "."
    budget_marker_size = 4
    regu_marker_size = 1


    #itrColNum = all_res_column_name_number["iteration cnt"]
    #distColNum = all_res_column_name_number["dist_to_goal_non_cost"]
    trueNum  =  all_res_column_name_number["move validity"]
    move_name_number =  all_res_column_name_number["move name"]


    # experiment_names
    experiment_names = []
    file_full_addr_list = []
    for dir_name in input_dir_names:
        file_full_addr = os.path.join(dir_name, "result_summary/FARSI_simple_run_0_1_all_reults.csv")
        file_full_addr_list.append(file_full_addr)
        experiment_name = get_experiments_name(file_full_addr, res_column_name_number)
        experiment_names.append(experiment_name)

    #color_values = ["r","b","y","black","brown","purple"]
    color_values = {}
    color_values["latency_edge_detection"] = color_values["best_des_so_far_latency_edge_detection"] =color_values["latency_budget_edge_detection"] = matplotlib.colors.to_rgba("red")
    color_values["latency_hpvm_cava"] =color_values["best_des_so_far_latency_hpvm_cava"] = color_values["latency_budget_hpvm_cava"] = matplotlib.colors.to_rgba("magenta")
    color_values["latency_audio_decoder"] = color_values["best_des_so_far_latency_audio_decoder"] =color_values["latency_budget_audio_decoder"] = matplotlib.colors.to_rgba("orange")
    color_values["area_non_dram"] =color_values["best_des_so_far_area_non_dram"] = color_values["area_budget"] =  matplotlib.colors.to_rgba("forestgreen")
    color_values["brown"] = (1,0,0,1)
    color_values["power"] = color_values["best_des_so_far_power"] =color_values["power_budget"] = matplotlib.colors.to_rgba("mediumblue")

    color_values["latency_budget_edge_detection"] = matplotlib.colors.to_rgba("white")
    color_values["latency_budget_hpvm_cava"] = matplotlib.colors.to_rgba("white")
    color_values["latency_budget_audio_decoder"] = matplotlib.colors.to_rgba("white")
    color_values["area_budget"] =  matplotlib.colors.to_rgba("white")
    color_values["power_budget"] = matplotlib.colors.to_rgba("white")



    column_name_color_val_dict = {"best_des_so_far_power":"purple", "power_budget":"purple","best_des_so_far_area_non_dram":"blue", "area_budget":"blue",
                                  "latency_budget_hpvm_cava":"orange", "latency_budget_audio_decoder":"yellow", "latency_budget_edge_detection":"red",
                                  "best_des_so_far_latency_hpvm_cava":"orange", "best_des_so_far_latency_audio_decoder": "yellow","best_des_so_far_latency_edge_detection": "red",
                                  "latency_budget":"white"
                                  }



    """
    column_name_color_val_dict = {"power":"purple", "power_budget":"purple","area_non_dram":"blue", "area_budget":"blue",
                                  "latency_budget_hpvm_cava":"orange", "latency_budget_audio_decoder":"yellow", "latency_budget_edge_detection":"red",
                                  "latency_hpvm_cava":"orange", "latency_audio_decoder": "yellow","latency_edge_detection": "red",
                                  "latency_budget":"white"
                                  }
    """

    axis_font = {'size': '20'}
    fontSize = 20
    x_column_name = "iteration cnt"
    #y_column_name_list = ["power", "area_non_dram", "latency", "latency_budget", "power_budget","area_budget"]
    y_column_name_list = ["power", "area_non_dram", "latency"]

    experiment_column_value = {}
    for file_full_addr in file_full_addr_list:
        experiment_name = get_experiments_name(file_full_addr, res_column_name_number)
        experiment_column_value[experiment_name] = {}
        for y_column_name in y_column_name_list:
            if "budget"  in y_column_name :
                prefix = ""
            else:
                prefix = "best_des_so_far_"
            y_column_name = prefix+y_column_name
            y_column_number = res_column_name_number[y_column_name]
            x_column_number = res_column_name_number[x_column_name]
            #dis_to_goal_column_number = res_column_name_number["dist_to_goal_non_cost"]
            #ref_des_dis_to_goal_column_number = res_column_name_number["ref_des_dist_to_goal_non_cost"]

            if not y_column_name == prefix+"latency":
                experiment_column_value[experiment_name][y_column_name] = []


            with open(file_full_addr, newline='') as csvfile:
                resultReader = csv.reader(csvfile, delimiter=',', quotechar='|')
                for i, row in enumerate(resultReader):
                    if i > 1:
                        if row[trueNum] == "FALSE" or row[move_name_number]=="identity":
                            continue
                        metric_chosen  = row[res_column_name_number["transformation_metric"]]
                        workload_chosen  = row[res_column_name_number["workload"]]
                        if "budget" in y_column_name:
                            alpha = budget_alpha
                        elif metric_chosen in y_column_name :
                            alpha = 1
                        else:
                            alpha = non_optimization_alpha

                        col_value = row[y_column_number]
                        if ";" in col_value:
                            col_value = col_value[:-1]
                        col_values = col_value.split(";")
                        for col_val in col_values:
                            if "=" in col_val:
                                if "budget" in y_column_name:
                                    alpha = budget_alpha
                                elif workload_chosen in col_val:
                                    alpha = 1
                                else:
                                    alpha = non_optimization_alpha
                                val_splitted = col_val.split("=")
                                value_to_add = (float(row[x_column_number]), (val_splitted[0], val_splitted[1]), alpha)
                            else:
                                value_to_add = (float(row[x_column_number]), col_val, alpha)

                            if y_column_name in [prefix+"latency", prefix+"latency_budget"] :
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



