def main(): if args.verbosity: loglevel = log.DEBUG else: loglevel = log.INFO modeFederation = mode_.ModeFederation.CUSTOM #not allowed could be set with a new cmd option modeAllocation = mode_.ModeAllocation.MIXED #if args.costfed: modeCost = mode_.ModeCost.INCLUDE_FEDERATION_COST #else: modeCost = mode_.ModeCost.EXCLUDE_FEDERATION_COST modeCost = mode_.ModeCost.INCLUDE_FEDERATION_COST folder = args.inputfolder find_bound = args.boundfind find_solution = not args.suppress metric = args.metric if metric == "random": host_sort = mode_.ModeHostSort.RANDOM else: host_sort = mode_.ModeHostSort.COST log.basicConfig( filename=args.logfile, format= '%(asctime)s-[%(filename)s-%(lineno)d]-%(levelname)s:%(message)s', level=loglevel) #---- log.info('New execution of admission control') log.info('Directory: %s', os.getcwd()) in_folder = folder #---- inp = fi.readinput(in_folder) try: t1 = time.clock() if find_solution: r1 = fr.get_best_result(inp, modeAllocation, modeFederation, modeCost, host_sort) t2 = time.clock() if find_solution: print('best solution found:', r1[0:3]) log.info('best solution found:%s', r1[0:3]) if find_solution: print(round(t2 - t1, 4)) t3 = time.clock() if find_bound: r2 = fr.get_best_result_bound(inp, modeFederation, modeCost) t4 = time.clock() if find_bound: print('best solution bound:', r2) print(round(t4 - t3, 4)) if find_solution: print('allocation pattern:', r1[3]) print('services acceptance rate, availability:', r1[4]) if (args.outputfile != None): f = open(args.outputfile, 'w') if find_solution: print_output(f, inp, r1, modeCost) if find_bound: print_output(f, r2) f.close() except mode_.MyError: print('Invalid value for mod')
def setUp(self): in_folder = os.getcwd() + os.sep\ + self.folder + os.sep inp = fi.readinput(in_folder) self.r1 = fr.get_best_result(inp, mode_.ModeAllocation.MIXED, mode_.ModeFederation.CUSTOM, mode_.ModeCost.INCLUDE_FEDERATION_COST, mode_.ModeHostSort.COST)
def setUp(self): in_folder = os.getcwd() + os.sep + self.folder + os.sep inp = fi.readinput(in_folder) self.r1 = fr.get_best_result( inp, mode_.ModeAllocation.MIXED, mode_.ModeFederation.CUSTOM, mode_.ModeCost.INCLUDE_FEDERATION_COST, mode_.ModeHostSort.COST, )
def main(): if args.verbosity: loglevel = log.DEBUG else: loglevel = log.INFO modeFederation = mode_.ModeFederation.CUSTOM #not allowed could be set with a new cmd option modeAllocation = mode_.ModeAllocation.MIXED #if args.costfed: modeCost = mode_.ModeCost.INCLUDE_FEDERATION_COST #else: modeCost = mode_.ModeCost.EXCLUDE_FEDERATION_COST modeCost = mode_.ModeCost.INCLUDE_FEDERATION_COST folder = args.inputfolder find_bound = args.boundfind find_solution = not args.suppress metric = args.metric if metric == "random": host_sort = mode_.ModeHostSort.RANDOM else: host_sort = mode_.ModeHostSort.COST log.basicConfig(filename=args.logfile, format='%(asctime)s-[%(filename)s-%(lineno)d]-%(levelname)s:%(message)s', level=loglevel) #---- log.info('New execution of admission control') log.info('Directory: %s', os.getcwd()) in_folder = folder #---- inp = fi.readinput(in_folder) try: t1 = time.clock() if find_solution: r1 = fr.get_best_result(inp, modeAllocation, modeFederation, modeCost, host_sort) t2 = time.clock() if find_solution: print ('best solution found:', r1[0:3]) log.info('best solution found:%s', r1[0:3]) if find_solution: print (round(t2-t1, 4) ) t3 = time.clock() if find_bound: r2 = fr.get_best_result_bound(inp, modeFederation, modeCost) t4 = time.clock() if find_bound: print ('best solution bound:', r2) print (round(t4-t3, 4) ) if find_solution: print ('allocation pattern:', r1[3]) print ('services acceptance rate, availability:', r1[4]) if (args.outputfile!=None): f = open(args.outputfile, 'w') if find_solution: print_output(f, inp, r1, modeCost) if find_bound: print_output(f,r2) f.close() except mode_.MyError as e: print ('Invalid value for mode: ', e.value)