介绍
本文介绍Tensorflow Op 级别的benchmark的用法以及代码调用
用法
|
|
代码分析
Benchmark文件
https://github.com/tensorflow/tensorflow/blob/e8598ce0454c440fca64e4ebc4aeedfa7afd5c97/tensorflow/core/kernels/image/non_max_suppression_op_benchmark_test.cc
封装构造testing::Benchmark
Step1:
BENCHMARK(BMCombinedNMS##DEVICE####B####BN####CN####Q);
Step2 注册benchmark 进入all_benchmark这个全局变量:
- TF_ATTRIBUTE_UNUSED attribute((unused)) 忽略GCC 告警: https://www.jianshu.com/p/21aef14340a8
- new ::tensorflow::testing::Benchmark(#n, (n)) 将这个函数注册到all_benchmark这个全局变量里面 里面 https://github.com/tensorflow/tensorflow/blob/e8598ce0454c440fca64e4ebc4aeedfa7afd5c97/tensorflow/core/platform/default/test_benchmark.cc#L39-L43