def parallel_compilation_of_one_combination(self, combination_obj: Combination, combination_folder_path: str): compiler_name = combination_obj.get_compiler() parallel_compiler = self.__get_parallel_compiler_by_name(compiler_name) parallel_compiler.initiate_for_new_task(combination_obj.get_parameters().get_compilation_params(), combination_folder_path, self.make_absolute_file_list(combination_folder_path)) pre_processing_args = dict() parallel_compiler.pre_processing(**pre_processing_args) parallel_compiler.compile() post_processing_args = {'files_loop_dict': self.files_loop_dict} parallel_compiler.post_processing(**post_processing_args) omp_rtl_params = combination_obj.get_parameters().get_omp_rtl_params() omp_directive_params = combination_obj.get_parameters().get_omp_directives_params() for file_dict in self.make_absolute_file_list(combination_folder_path): self.inject_rtl_params_to_loop(file_dict, omp_rtl_params) self.inject_directive_params_to_loop(file_dict, omp_directive_params)