proxygen
|
#include <folly/Benchmark.h>
#include <folly/executors/InlineExecutor.h>
#include <folly/futures/Future.h>
#include <folly/futures/Promise.h>
#include <folly/portability/GFlags.h>
#include <folly/portability/Semaphore.h>
#include <folly/synchronization/Baton.h>
#include <vector>
Go to the source code of this file.
Classes | |
struct | Blob< S > |
Functions | |
BENCHMARK (constantFuture) | |
BENCHMARK_RELATIVE (promiseAndFuture) | |
BENCHMARK_RELATIVE (withThen) | |
BENCHMARK_DRAW_LINE () | |
BENCHMARK (oneThen) | |
BENCHMARK_RELATIVE (twoThens) | |
BENCHMARK_RELATIVE (fourThens) | |
BENCHMARK_RELATIVE (hundredThens) | |
BENCHMARK (no_contention) | |
BENCHMARK_RELATIVE (contention) | |
void | throwAndCatchImpl () |
void | throwAndCatchWrappedImpl () |
void | throwWrappedAndCatchImpl () |
void | throwWrappedAndCatchWrappedImpl () |
void | contend (void(*func)()) |
BENCHMARK (throwAndCatch) | |
BENCHMARK_RELATIVE (throwAndCatchWrapped) | |
BENCHMARK_RELATIVE (throwWrappedAndCatch) | |
BENCHMARK_RELATIVE (throwWrappedAndCatchWrapped) | |
BENCHMARK (throwAndCatchContended) | |
BENCHMARK_RELATIVE (throwAndCatchWrappedContended) | |
BENCHMARK_RELATIVE (throwWrappedAndCatchContended) | |
BENCHMARK_RELATIVE (throwWrappedAndCatchWrappedContended) | |
BENCHMARK (lvalue_get) | |
BENCHMARK_RELATIVE (rvalue_get) | |
template<class T > | |
Future< T > | fGen () |
template<class T > | |
std::vector< Future< T > > | fsGen () |
template<class T > | |
void | complexBenchmark () |
BENCHMARK (complexUnit) | |
BENCHMARK_RELATIVE (complexBlob4) | |
BENCHMARK_RELATIVE (complexBlob8) | |
BENCHMARK_RELATIVE (complexBlob64) | |
BENCHMARK_RELATIVE (complexBlob128) | |
BENCHMARK_RELATIVE (complexBlob256) | |
BENCHMARK_RELATIVE (complexBlob512) | |
BENCHMARK_RELATIVE (complexBlob1024) | |
BENCHMARK_RELATIVE (complexBlob2048) | |
BENCHMARK_RELATIVE (complexBlob4096) | |
int | main (int argc, char **argv) |
Variables | |
InlineExecutor | exe |
BENCHMARK | ( | constantFuture | ) |
Definition at line 45 of file Benchmark.cpp.
References folly::makeFuture().
BENCHMARK | ( | oneThen | ) |
Definition at line 66 of file Benchmark.cpp.
BENCHMARK | ( | no_contention | ) |
Definition at line 90 of file Benchmark.cpp.
References BENCHMARK_SUSPEND, f, folly::gen::move, folly::Baton< MayBlock, Atom >::post(), and folly::Baton< MayBlock, Atom >::wait().
BENCHMARK | ( | throwAndCatch | ) |
BENCHMARK | ( | throwAndCatchContended | ) |
BENCHMARK | ( | lvalue_get | ) |
Definition at line 317 of file Benchmark.cpp.
References folly::BenchmarkSuspender::dismissing(), folly::doNotOptimizeAway(), folly::makeFuture(), folly::gen::move, string, and folly::Optional< Value >::value().
BENCHMARK | ( | complexUnit | ) |
Definition at line 377 of file Benchmark.cpp.
BENCHMARK_DRAW_LINE | ( | ) |
BENCHMARK_RELATIVE | ( | promiseAndFuture | ) |
Definition at line 49 of file Benchmark.cpp.
References f, folly::Promise< T >::getFuture(), folly::Promise< T >::setValue(), and folly::futures::detail::FutureBase< T >::value().
BENCHMARK_RELATIVE | ( | withThen | ) |
Definition at line 56 of file Benchmark.cpp.
References folly::BENCHMARK_DRAW_LINE(), f, folly::Promise< T >::getFuture(), folly::Promise< T >::setValue(), and folly::futures::detail::FutureBase< T >::value().
BENCHMARK_RELATIVE | ( | twoThens | ) |
Definition at line 71 of file Benchmark.cpp.
BENCHMARK_RELATIVE | ( | fourThens | ) |
Definition at line 76 of file Benchmark.cpp.
BENCHMARK_RELATIVE | ( | hundredThens | ) |
Definition at line 81 of file Benchmark.cpp.
References folly::BENCHMARK_DRAW_LINE().
BENCHMARK_RELATIVE | ( | contention | ) |
Definition at line 124 of file Benchmark.cpp.
References folly::BENCHMARK_DRAW_LINE(), BENCHMARK_SUSPEND, f, folly::gen::move, folly::Baton< MayBlock, Atom >::post(), and folly::Baton< MayBlock, Atom >::wait().
BENCHMARK_RELATIVE | ( | throwAndCatchWrapped | ) |
BENCHMARK_RELATIVE | ( | throwWrappedAndCatch | ) |
BENCHMARK_RELATIVE | ( | throwWrappedAndCatchWrapped | ) |
Definition at line 277 of file Benchmark.cpp.
References folly::BENCHMARK_DRAW_LINE(), and throwWrappedAndCatchWrappedImpl().
BENCHMARK_RELATIVE | ( | throwAndCatchWrappedContended | ) |
BENCHMARK_RELATIVE | ( | throwWrappedAndCatchContended | ) |
BENCHMARK_RELATIVE | ( | throwWrappedAndCatchWrappedContended | ) |
Definition at line 295 of file Benchmark.cpp.
References folly::BENCHMARK_DRAW_LINE(), contend(), message, folly::gen::move, string, and throwWrappedAndCatchWrappedImpl().
BENCHMARK_RELATIVE | ( | rvalue_get | ) |
Definition at line 327 of file Benchmark.cpp.
References folly::BenchmarkSuspender::dismissing(), folly::doNotOptimizeAway(), folly::makeFuture(), folly::gen::move, string, and folly::Optional< Value >::value().
BENCHMARK_RELATIVE | ( | complexBlob4 | ) |
Definition at line 381 of file Benchmark.cpp.
BENCHMARK_RELATIVE | ( | complexBlob8 | ) |
Definition at line 385 of file Benchmark.cpp.
BENCHMARK_RELATIVE | ( | complexBlob64 | ) |
Definition at line 389 of file Benchmark.cpp.
BENCHMARK_RELATIVE | ( | complexBlob128 | ) |
Definition at line 393 of file Benchmark.cpp.
BENCHMARK_RELATIVE | ( | complexBlob256 | ) |
Definition at line 397 of file Benchmark.cpp.
BENCHMARK_RELATIVE | ( | complexBlob512 | ) |
Definition at line 401 of file Benchmark.cpp.
BENCHMARK_RELATIVE | ( | complexBlob1024 | ) |
Definition at line 405 of file Benchmark.cpp.
BENCHMARK_RELATIVE | ( | complexBlob2048 | ) |
Definition at line 409 of file Benchmark.cpp.
BENCHMARK_RELATIVE | ( | complexBlob4096 | ) |
Definition at line 413 of file Benchmark.cpp.
void complexBenchmark | ( | ) |
Definition at line 362 of file Benchmark.cpp.
References folly::BENCHMARK_DRAW_LINE(), folly::collect(), folly::collectAll(), folly::collectAny(), folly::makeFuture(), folly::futures::map(), folly::pushmi::detail::t, and folly::T.
void contend | ( | void(*)() | func | ) |
Definition at line 241 of file Benchmark.cpp.
References folly::BenchmarkSuspender::dismiss(), i, folly::BenchmarkSuspender::rehire(), s, folly::pushmi::detail::t, and threads.
Referenced by BENCHMARK(), and BENCHMARK_RELATIVE().
Definition at line 340 of file Benchmark.cpp.
References f, folly::Promise< T >::getFuture(), folly::makeFuture(), folly::gen::move, folly::Promise< T >::setValue(), folly::pushmi::detail::t, folly::T, and folly::via().
int main | ( | int | argc, |
char ** | argv | ||
) |
void throwAndCatchImpl | ( | ) |
Definition at line 176 of file Benchmark.cpp.
References folly::makeFuture(), and folly::pushmi::detail::t.
Referenced by BENCHMARK().
void throwAndCatchWrappedImpl | ( | ) |
Definition at line 196 of file Benchmark.cpp.
References folly::makeFuture(), and folly::pushmi::detail::t.
Referenced by BENCHMARK_RELATIVE().
void throwWrappedAndCatchImpl | ( | ) |
Definition at line 209 of file Benchmark.cpp.
References folly::makeFuture(), and folly::pushmi::detail::t.
Referenced by BENCHMARK_RELATIVE().
void throwWrappedAndCatchWrappedImpl | ( | ) |
Definition at line 226 of file Benchmark.cpp.
References folly::makeFuture(), and folly::pushmi::detail::t.
Referenced by BENCHMARK_RELATIVE().
InlineExecutor exe |
Definition at line 337 of file Benchmark.cpp.
Referenced by folly::futures::detail::convertFuture(), getTracepointArguments(), proxygen::HTTPServer::start(), TEST(), and folly::Future< T >::within().