symforce.benchmarks.run_benchmarks module

Helper script to run all of the benchmarks, and put timing results into a directory

See README files in each directory for a description of each benchmark

run(benchmark, exe_name, test_name, out_path, stats, allow_no_matches=False)[source]
Parameters:
  • benchmark (str) –

  • exe_name (str) –

  • test_name (str) –

  • out_path (Path) –

  • stats (List[str]) –

  • allow_no_matches (bool) –

Return type:

Optional[str]

run_benchmark(benchmark, benchmark_config, out_path)[source]
Parameters:
  • benchmark (str) –

  • benchmark_config (Mapping[str, Iterable[str]]) –

  • out_path (Path) –

Return type:

None

class MatmulBenchmarkConfig(matrix_name, scalar_type, test, M, N, size, nnz)[source]

Bases: object

Parameters:
  • matrix_name (str) –

  • scalar_type (str) –

  • test (str) –

  • M (int) –

  • N (int) –

  • size (int) –

  • nnz (int) –

matrix_name: str
scalar_type: str
test: str
M: int
N: int
size: int
nnz: int
__init__(matrix_name, scalar_type, test, M, N, size, nnz)
Parameters:
  • matrix_name (str) –

  • scalar_type (str) –

  • test (str) –

  • M (int) –

  • N (int) –

  • size (int) –

  • nnz (int) –

run_matmul_benchmark(out_path)[source]
Parameters:

out_path (Path) –

Return type:

Dict[MatmulBenchmarkConfig, Optional[List[float]]]

main(benchmark=None, out_dir='benchmark_outputs')[source]
Parameters:
  • benchmark (Optional[str]) –

  • out_dir (str) –

Return type:

None