def _set_up(self, build, item, flavor, it_nr, is_instr_run) -> None: L.get_logger().log('ScorepSystemHelper::_set_up: is_instr_run: ' + str(is_instr_run), level='debug') if not is_instr_run: return exp_dir = self.config.get_analyzer_exp_dir(build, item) L.get_logger().log( 'ScorepSystemHelper::_set_up: Retrieved analyzer experiment directory: ' + exp_dir, level='debug') effective_dir = U.get_cube_file_path(exp_dir, flavor, it_nr) if not U.check_provided_directory(effective_dir): L.get_logger().log( 'ScorepSystemHelper::_set_up: Experiment directory does not exist. \nCreating path: ' + effective_dir, level='debug') U.create_directory(effective_dir) db_exp_dir = U.build_cube_file_path_for_db(exp_dir, flavor, it_nr) self.data['cube_dir'] = db_exp_dir self.set_exp_dir(exp_dir, flavor, it_nr) self.set_memory_size('500M') self.set_overwrite_exp_dir() self.set_profiling_basename(flavor, build, item)
def check_and_prepare(self, experiment_dir: str, target_config: TargetConfiguration, instr_config: InstrumentConfig) -> str: cur_ep_dir = self.get_extrap_dir_name( target_config, instr_config.get_instrumentation_iteration()) if not u.is_valid_file_name(cur_ep_dir): log.get_logger().log( 'ExtrapProfileSink::check_and_prepare: Generated directory name no good. Abort\n' + cur_ep_dir, level='error') else: if u.check_provided_directory(cur_ep_dir): new_dir_name = cur_ep_dir + '_' + u.generate_random_string() log.get_logger().log( 'ExtrapProfileSink::check_and_prepare: Moving old experiment directory to: ' + new_dir_name, level='info') u.rename(cur_ep_dir, new_dir_name) u.create_directory(cur_ep_dir) cubex_name = experiment_dir + '/' + target_config.get_flavor( ) + '-' + target_config.get_target() + '.cubex' log.get_logger().log(cubex_name) if not u.is_file(cubex_name): log.get_logger().log( 'ExtrapProfileSink::check_and_prepare: Returned experiment cube name is no file: ' + cubex_name) else: return cubex_name raise ProfileSinkException( 'ExtrapProfileSink: Could not create target directory or Cube dir bad.' )