|
proxygen
|
#include <folly/concurrency/CacheLocality.h>#include <memory>#include <thread>#include <unordered_map>#include <glog/logging.h>#include <folly/Benchmark.h>Go to the source code of this file.
Namespaces | |
| folly | |
| —— Concurrent Priority Queue Implementation —— | |
Macros | |
| #define | DECLARE_SPREADER_TAG(tag, locality, func) |
Functions | |
| BENCHMARK (AccessSpreaderUse, iters) | |
| BENCHMARK (CachedAccessSpreaderUse, iters) | |
| BENCHMARK (BaselineAtomicIncrement, iters) | |
| BENCHMARK (CachedAccessSpreaderAtomicIncrement, iters) | |
| template<template< typename > class Tag> | |
| static void | contentionAtWidth (size_t iters, size_t stripes, size_t work) |
| static void | atomicIncrBaseline (size_t iters, size_t work, size_t numThreads=32) |
| static void | contentionAtWidthGetcpu (size_t iters, size_t stripes, size_t work) |
| static void | contentionAtWidthThreadLocal (size_t iters, size_t stripes, size_t work) |
| static void | contentionAtWidthPthreadSelf (size_t iters, size_t stripes, size_t work) |
| static void | contentionAtWidthCached (size_t iters, size_t stripes, size_t work) |
| BENCHMARK_DRAW_LINE () | |
| int | main (int argc, char **argv) |
| #define DECLARE_SPREADER_TAG | ( | tag, | |
| locality, | |||
| func | |||
| ) |
Definition at line 29 of file CacheLocalityBenchmark.cpp.
Referenced by TEST().
|
static |
Definition at line 252 of file CacheLocalityBenchmark.cpp.
References folly::BenchmarkSuspender::dismiss(), folly::doNotOptimizeAway(), i, threads, and folly::fibers::yield().
Referenced by contentionAtWidthCached().
| BENCHMARK | ( | AccessSpreaderUse | , |
| iters | |||
| ) |
Definition at line 68 of file CacheLocalityBenchmark.cpp.
References folly::AccessSpreader< Atom >::current(), folly::doNotOptimizeAway(), and i.
| BENCHMARK | ( | CachedAccessSpreaderUse | , |
| iters | |||
| ) |
Definition at line 75 of file CacheLocalityBenchmark.cpp.
References folly::AccessSpreader< Atom >::cachedCurrent(), folly::doNotOptimizeAway(), and i.
| BENCHMARK | ( | BaselineAtomicIncrement | , |
| iters | |||
| ) |
Definition at line 82 of file CacheLocalityBenchmark.cpp.
References folly::doNotOptimizeAway(), i, and folly::value().
| BENCHMARK | ( | CachedAccessSpreaderAtomicIncrement | , |
| iters | |||
| ) |
Definition at line 90 of file CacheLocalityBenchmark.cpp.
References folly::AccessSpreader< Atom >::cachedCurrent(), folly::doNotOptimizeAway(), i, values(), and x.
| BENCHMARK_DRAW_LINE | ( | ) |
|
static |
Definition at line 182 of file CacheLocalityBenchmark.cpp.
References folly::AccessSpreader< Atom >::current(), folly::BenchmarkSuspender::dismiss(), folly::doNotOptimizeAway(), i, folly::pushmi::detail::t, threads, and folly::fibers::yield().
|
static |
Definition at line 297 of file CacheLocalityBenchmark.cpp.
References atomicIncrBaseline(), folly::BENCHMARK_DRAW_LINE(), BENCHMARK_NAMED_PARAM, contentionAtWidthGetcpu(), contentionAtWidthPthreadSelf(), and contentionAtWidthThreadLocal().
|
static |
Definition at line 283 of file CacheLocalityBenchmark.cpp.
Referenced by contentionAtWidthCached().
|
static |
Definition at line 293 of file CacheLocalityBenchmark.cpp.
Referenced by contentionAtWidthCached().
|
static |
Definition at line 288 of file CacheLocalityBenchmark.cpp.
Referenced by contentionAtWidthCached().
| int main | ( | int | argc, |
| char ** | argv | ||
| ) |