Skip to content
Snippets Groups Projects
user avatar
zhanghb97 authored
3b07087c

Buddy Benchmark

Buddy Benchmark is an extensible benchmark framework. We intend to provide a platform for performance comparison of various frameworks and optimizers. This project is based on Google Benchmark.

Clone the project:

$ git clone https://github.com/buddy-compiler/buddy-benchmark.git

Image Processing Benchmark

Currently, the image processing benchmark includes the following frameworks or optimizers:

  • OpenCV
  • Buddy MLIR

NOTE: Please make sure the conv-opt tool of buddy-mlir project can work well.

Run the image processing benchmark:

$ cd buddy-benchmark
$ mkdir build
$ cd build
$ cmake -G Ninja .. \
    -DIMAGE_PROCESSING_BENCHMARKS=ON \
    -DOpenCV_DIR=/path/to/opencv/build/ \
    -DBUDDY_CONV_OPT_BUILD_DIR=/path/to/buddy-mlir/build \
    -DBUDDY_CONV_OPT_STRIP_MINING=<strip mining size, default: 256> \
    -DBUDDY_CONV_OPT_ATTR=<ISA vector extension, default: avx512f>
$ ninja image-processing-benchmark
$ cd bin
$ ./image-processing-benchmark

Note : The convolution implementation in buddy mlir is not feature complete at the moment and it may produce output which differs to some extent from the frameworks used in comparison.