# -*- encoding: utf-8 -*- from asyncore import write import difflib import os, sys,string,re,glob import shutil import csv import copy import math import json import time from tqdm import tqdm import pathlib folder = str(pathlib.Path(__file__).parent.resolve()) def calculate_time(): Target_Module = {} Func_Lis = [] for line in open(folder+"/../../../dataset/test.jsonl", 'r', encoding="utf-8"): dic = json.loads(line) if dic["Target"]+" "+dic["Module"] not in Target_Module.keys(): Target_Module[dic["Target"]+" "+dic["Module"]] = 1 else: Target_Module[dic["Target"]+" "+dic["Module"]] += 1 Func_Lis.append(dic["File"]+" "+dic["Func"]) with open(folder+"/Fig7.csv", "w",encoding="utf-8", newline = "") as f: writer = csv.writer(f) for kv in Target_Module.items(): writer.writerow(kv[0].replace("PULP", "RI5CY").split(" ") + [kv[1], math.ceil(kv[1] * 25.0 / 256)]) if __name__ == '__main__': calculate_time()