def __init__(self, raw_args=None): self.args, self.unknowns = parser.parse_known_args(raw_args) os.environ["CLAIMER"] = self.args.claimer_id self.benchmark_downloader = DownloadBenchmarks(self.args, getLogger()) self.adb = ADB(None, self.args.android_dir) setLoggerLevel(self.args.logger_level) if not self.args.benchmark_db_entry: assert ( self.args.server_addr is not None ), "Either server_addr or benchmark_db_entry must be specified" while self.args.server_addr[-1] == "/": self.args.server_addr = self.args.server_addr[:-1] self.args.benchmark_db_entry = self.args.server_addr + "/benchmark/" self.db = DBDriver( self.args.benchmark_db, self.args.app_id, self.args.token, self.args.benchmark_table, self.args.job_queue, self.args.test, self.args.benchmark_db_entry, ) self.device_manager = DeviceManager(self.args, self.db) self.devices = self.device_manager.getLabDevices() if self.args.platform.startswith("host"): numProcesses = 2 else: numProcesses = multiprocessing.cpu_count() - 1 self.pool = Pool(max_workers=numProcesses, initializer=hookSignals)
def __init__(self, raw_args=None): self.args, self.unknowns = parser.parse_known_args(raw_args) self._updateArgs(self.args) setLoggerLevel(self.args.logger_level) if not self.args.benchmark_db_entry: assert ( self.args.server_addr is not None ), "Either server_addr or benchmark_db_entry must be specified" while self.args.server_addr[-1] == "/": self.args.server_addr = self.args.server_addr[:-1] self.args.benchmark_db_entry = self.args.server_addr + "/benchmark/" self.db = DBDriver( self.args.benchmark_db, self.args.app_id, self.args.token, self.args.benchmark_table, self.args.job_queue, self.args.test, self.args.benchmark_db_entry, ) self.url_printer = PrintResultURL(self.args) self.file_handler = FileHandler(self.args) self.devices = Devices(self.args.devices_config) # Hard code scuba table self.scuba_dataset = "caffe2_benchmarking" self.info = None self.temprdir = ""
def __init__(self, raw_args=None): self.args, self.unknowns = parser.parse_known_args(raw_args) self.benchmark_downloader = DownloadBenchmarks(self.args, getLogger()) self.adb = ADB(None, self.args.android_dir) devices = self._getDevices() setLoggerLevel(self.args.logger_level) if not self.args.benchmark_db_entry: assert self.args.server_addr is not None, \ "Either server_addr or benchmark_db_entry must be specified" while self.args.server_addr[-1] == '/': self.args.server_addr = self.args.server_addr[:-1] self.args.benchmark_db_entry = self.args.server_addr + "/benchmark/" self.db = DBDriver(self.args.benchmark_db, self.args.app_id, self.args.token, self.args.benchmark_table, self.args.job_queue, self.args.test, self.args.benchmark_db_entry) self.devices = {} for k in devices: kind = k["kind"] hash = k["hash"] entry = { "kind": kind, "hash": hash, "available": True, "live": True, "start_time": None, "done_time": None, "output_dir": None, "job": None, "adb": ADB(hash, self.args.android_dir), "reboot_time": datetime.datetime.now() - datetime.timedelta(hours=8) } if kind not in self.devices: self.devices[kind] = {} assert hash not in self.devices[kind], \ "Device {} ({}) is attached twice.".format(kind, hash) self.devices[kind][hash] = entry dvs = [ self.devices[k][h] for k in self.devices for h in self.devices[k] ] self.db.updateDevices(self.args.claimer_id, getDevicesString(dvs), True) if self.args.platform.startswith("host"): numProcesses = 2 else: numProcesses = multiprocessing.cpu_count() - 1 self.pool = multiprocessing.Pool(processes=numProcesses)
def __init__(self, raw_args=None): self.args, self.unknowns = parser.parse_known_args(raw_args) self.root_dir = self.args.config_dir self.repoCls = LabDriver setLoggerLevel(self.args.logger_level)
def __init__(self, raw_args=None): self.args, self.unknowns = parser.parse_known_args(raw_args) setLoggerLevel(self.args.logger_level)