You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.7 KiB
55 lines
1.7 KiB
// Copyright (c) Facebook, Inc. and its affiliates.
|
|
// All rights reserved.
|
|
//
|
|
// Copyright 2019 Google LLC
|
|
//
|
|
// This source code is licensed under the BSD-style license found in the
|
|
// LICENSE file in the root directory of this source tree.
|
|
|
|
#pragma once
|
|
|
|
#include <benchmark/benchmark.h>
|
|
|
|
|
|
#define BENCHMARK_DCONV(conv_fn) \
|
|
BENCHMARK_CAPTURE(conv_fn, mobilenet_v1, "MobileNet v1/v2")->Apply(MobileNetConvArguments)->UseRealTime(); \
|
|
BENCHMARK_CAPTURE(conv_fn, mobilenet_v3, "MobileNet v3")->Apply(MobileNetV3ConvArguments)->UseRealTime(); \
|
|
BENCHMARK_CAPTURE(conv_fn, shufflenet, "ShuffleNet v1/v2")->Apply(ShuffleNetConvArguments)->UseRealTime(); \
|
|
BENCHMARK_CAPTURE(conv_fn, squeezenet_v11, "SqueezeNet 1.1")->Apply(SqueezeNetV11ConvArguments)->UseRealTime();
|
|
|
|
|
|
// ShuffleNet v1/v2.
|
|
static void ShuffleNetConvArguments(benchmark::internal::Benchmark* b) {
|
|
b->ArgNames({"H", "W", "Cout"});
|
|
|
|
/********* Conv 1 ********/
|
|
/* H W GCout */
|
|
b->Args({224, 224, 24});
|
|
}
|
|
|
|
// MobileNet v1/v2.
|
|
static void MobileNetConvArguments(benchmark::internal::Benchmark* b) {
|
|
b->ArgNames({"H", "W", "Cout"});
|
|
|
|
/* H W GCout */
|
|
b->Args({224, 224, 32});
|
|
}
|
|
|
|
// MobileNet v3 Small/Large.
|
|
static void MobileNetV3ConvArguments(benchmark::internal::Benchmark* b) {
|
|
b->ArgNames({"H", "W", "Cout"});
|
|
|
|
/******************* Initial Stage *******************/
|
|
/* H W GCout */
|
|
b->Args({224, 224, 16});
|
|
}
|
|
|
|
// SqueezeNet 1.1
|
|
static void SqueezeNetV11ConvArguments(benchmark::internal::Benchmark* b) {
|
|
b->ArgNames({"H", "W", "GCout"});
|
|
|
|
/*********************** Conv 1 **********************/
|
|
/* H W GCout */
|
|
b->Args({224, 224, 64});
|
|
}
|