(config: dict[str, Any], args: argparse.Namespace)
| 681 | ) |
| 682 | parser.add_argument("--artifact-stamp", default="") |
| 683 | parser.add_argument("--output-dir") |
| 684 | parser.add_argument("--output-json") |
| 685 | parser.add_argument("--keep-output-dir", action="store_true") |
| 686 | args = parser.parse_args() |
| 687 | args.warmup_was_explicit = any(arg == "--warmup" or arg.startswith("--warmup=") for arg in sys.argv[1:]) |
| 688 | args.requests_per_session_was_explicit = any( |
| 689 | arg == "--requests-per-session" or arg.startswith("--requests-per-session=") |
| 690 | for arg in sys.argv[1:] |
| 691 | ) |
| 692 | args.seed_was_explicit = any(arg == "--seed" or arg.startswith("--seed=") for arg in sys.argv[1:]) |
| 693 | return args |
| 694 | |
| 695 | |
| 696 | def selected_families(args: argparse.Namespace) -> list[str]: |
| 697 | if not args.families or "all" in args.families: |
| 698 | return list(FAMILY_CONFIG.keys()) |
| 699 | return args.families |
| 700 | |
| 701 | |
| 702 | def selected_backends(args: argparse.Namespace) -> list[str]: |
| 703 | return ["cpu", "cuda"] if args.backend == "all" else [args.backend] |
| 704 | |
| 705 | |
| 706 | def python_reference_backend(backend: str) -> str: |
| 707 | return "cuda" if backend == "vulkan" else backend |
| 708 | |
| 709 | |
| 710 | def set_command_backend(command: list[str], backend: str) -> None: |
| 711 | for index, value in enumerate(command[:-1]): |
| 712 | if value == "--backend": |
| 713 | command[index + 1] = backend |
| 714 | return |
| 715 | raise RuntimeError("warmbench command is missing --backend") |
| 716 | |
| 717 | |
| 718 | def selected_modes(args: argparse.Namespace, config: dict[str, Any]) -> list[str]: |
| 719 | modes = list(config["modes"]) |
| 720 | if args.mode == "all": |
| 721 | return modes |
| 722 | return [args.mode] if args.mode in modes else [] |
| 723 | |
| 724 |
no test coverage detected