# Copyright 2022 The IREE Authors # # Licensed under the Apache License v2.0 with LLVM Exceptions. # See https://llvm.org/LICENSE.txt for license information. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception import abc from common.benchmark_command import BenchmarkCommand class BenchmarkCommandFactory(abc.ABC): """An abstract factory that generates commands depending on config. Args: device: Currently 'desktop' or 'mobile' are supported. driver: Currently 'cpu' or 'gpu' are supported. Returns: An array containing `BenchmarkCommand` objects. """ @abc.abstractmethod def generate_benchmark_commands( self, device: str, driver: str ) -> list[BenchmarkCommand]: pass