proxygen
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
RcuBenchmark.cpp
Go to the documentation of this file.
1
/*
2
* Copyright 2018-present Facebook, Inc.
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
17
#include <
folly/Benchmark.h
>
18
#include <
folly/synchronization/Rcu.h
>
19
20
using namespace
folly
;
21
22
void
runTest
(
int
iters) {
23
BenchmarkSuspender
susp;
24
25
{
rcu_reader
g
; }
26
susp.
dismiss
();
27
28
// run the test loop
29
for
(
int
i
= 0;
i
< iters;
i
++) {
30
rcu_reader
g
;
31
}
32
}
33
34
BENCHMARK_DRAW_LINE
();
35
BENCHMARK
(RcuReader, iters) {
36
runTest
(iters);
37
}
38
BENCHMARK_DRAW_LINE
();
39
40
int
main
(
int
argc,
char
*
argv
[]) {
41
gflags::ParseCommandLineFlags(&argc, &argv,
true
);
42
folly::runBenchmarks
();
43
44
return
0;
45
}
i
i
Definition:
gtest_output_test_golden_lin.txt:83
folly::BenchmarkSuspender
Definition:
Benchmark.h:87
folly
—— Concurrent Priority Queue Implementation ——
Definition:
AtomicBitSet.h:29
main
int main(int argc, char *argv[])
Definition:
RcuBenchmark.cpp:40
folly::runBenchmarks
void runBenchmarks()
Definition:
Benchmark.cpp:456
Benchmark.h
argv
char ** argv
Definition:
SmallLocksBenchmark.cpp:430
runTest
void runTest(int iters)
Definition:
RcuBenchmark.cpp:22
folly::rcu_reader_domain
Definition:
Rcu.h:391
folly::BenchmarkSuspender::dismiss
void dismiss()
Definition:
Benchmark.h:118
folly::BENCHMARK
BENCHMARK(fbFollyGlobalBenchmarkBaseline)
Definition:
Benchmark.cpp:84
g
g_t g(f_t)
Definition:
composition_2.cpp:34
folly::BENCHMARK_DRAW_LINE
BENCHMARK_DRAW_LINE()
Rcu.h
proxygen
folly
folly
synchronization
test
RcuBenchmark.cpp
Generated by
1.8.11