# -*- coding: utf-8 -*- """ TP1 T1 Ceci est un script permettant de tester différentes configurations de cache pour cacti """ import os chemin_fichier_config = "_fichiers/configs/" chemin_fichier_result = "_fichiers/resultats/" configurations = [[1,0,0,0],[1,0,1,1],[1,0,0,1],[1,1,1,1]] nom_fichier_config = "cache.cfg" i = 0 #----------- Cette section permet de configurer le nombre de ports entrée/sortie du fichier --------- with open(chemin_fichier_config + nom_fichier_config, "r") as fichier: Lignes = fichier.readlines() index = 0 for ligne in Lignes: if "" in ligne: Lignes[index + 1] = "-read-write port {}\n".format(configurations[i][0]) Lignes[index + 2] = "-exclusive read port {}\n".format(configurations[i][1]) Lignes[index + 3] = "-exclusive write port {}\n".format(configurations[i][2]) Lignes[index + 4] = "-single ended read ports {}\n".format(configurations[i][3]) break index += 1 with open(chemin_fichier_config + nom_fichier_config, "w") as fichier: fichier.writelines(Lignes) #----------- Section pour lancer la simulation sur cacti ------------------------------- commande = "./cacti -infile {}".format(chemin_fichier_config + nom_fichier_config) flux = os.popen(commande) resultat = flux.read().split('\n') for ligne in resultat: if "Access time (ns):" in ligne: val_tps = float(ligne.split(':')[1]) print(val_tps) #flux = os.popen(commande) #print(flux.read())