proxygen
|
#include <algorithm>
#include <limits>
#include <numeric>
#include <random>
#include <vector>
#include <folly/Benchmark.h>
#include <folly/experimental/EliasFanoCoding.h>
#include <folly/experimental/Select64.h>
#include <folly/experimental/test/CodingTestUtils.h>
#include <folly/init/Init.h>
Go to the source code of this file.
Classes | |
class | EliasFanoCodingTest |
Namespaces | |
bm | |
Functions | |
TEST (EliasFanoCoding, defaultNumLowerBits) | |
TEST_F (EliasFanoCodingTest, Empty) | |
TEST_F (EliasFanoCodingTest, Simple) | |
TEST_F (EliasFanoCodingTest, SkipPointers) | |
TEST_F (EliasFanoCodingTest, ForwardPointers) | |
TEST_F (EliasFanoCodingTest, SkipForwardPointers) | |
TEST_F (EliasFanoCodingTest, BugLargeGapInUpperBits) | |
void | bm::init () |
void | bm::free () |
BENCHMARK (Next, iters) | |
size_t | Skip_ForwardQ128 (size_t iters, size_t logAvgSkip) |
BENCHMARK (Jump_ForwardQ128, iters) | |
BENCHMARK_DRAW_LINE () | |
size_t | SkipTo_SkipQ128 (size_t iters, size_t logAvgSkip) |
BENCHMARK (JumpTo_SkipQ128, iters) | |
BENCHMARK (Encode_10) | |
BENCHMARK (Encode) | |
BENCHMARK (defaultNumLowerBits, iters) | |
BENCHMARK (slowDefaultNumLowerBits, iters) | |
int | main (int argc, char **argv) |
Variables | |
std::vector< std::pair< size_t, size_t > > | bm::numLowerBitsInput |
BENCHMARK | ( | Next | , |
iters | |||
) |
Definition at line 198 of file EliasFanoCodingTest.cpp.
References bm::data, folly::compression::dispatchInstructions(), and bm::list.
BENCHMARK | ( | Jump_ForwardQ128 | , |
iters | |||
) |
Definition at line 221 of file EliasFanoCodingTest.cpp.
References folly::BENCHMARK_DRAW_LINE(), bm::data, folly::compression::dispatchInstructions(), bm::list, and bm::order.
BENCHMARK | ( | JumpTo_SkipQ128 | , |
iters | |||
) |
Definition at line 246 of file EliasFanoCodingTest.cpp.
References folly::BENCHMARK_DRAW_LINE(), bm::data, folly::compression::dispatchInstructions(), bm::list, and bm::order.
BENCHMARK | ( | Encode_10 | ) |
Definition at line 255 of file EliasFanoCodingTest.cpp.
References folly::test::begin(), folly::compression::BitVectorEncoder< Value, SkipValue, kSkipQuantum, kForwardQuantum >::encode(), bm::encodeSmallData, folly::test::end(), folly::compression::BitVectorCompressedListBase< Pointer >::free(), and bm::list.
BENCHMARK | ( | Encode | ) |
Definition at line 261 of file EliasFanoCodingTest.cpp.
References folly::test::begin(), folly::BENCHMARK_DRAW_LINE(), folly::compression::BitVectorEncoder< Value, SkipValue, kSkipQuantum, kForwardQuantum >::encode(), bm::encodeLargeData, folly::test::end(), folly::compression::BitVectorCompressedListBase< Pointer >::free(), and bm::list.
BENCHMARK | ( | defaultNumLowerBits | , |
iters | |||
) |
Definition at line 269 of file EliasFanoCodingTest.cpp.
References folly::doNotOptimizeAway(), i, bm::numLowerBitsInput, and folly::size().
BENCHMARK | ( | slowDefaultNumLowerBits | , |
iters | |||
) |
Definition at line 282 of file EliasFanoCodingTest.cpp.
References folly::doNotOptimizeAway(), i, bm::numLowerBitsInput, s, folly::size(), Skip_ForwardQ128(), SkipTo_SkipQ128(), and folly::detail::distributed_mutex::time().
BENCHMARK_DRAW_LINE | ( | ) |
int main | ( | int | argc, |
char ** | argv | ||
) |
Definition at line 327 of file EliasFanoCodingTest.cpp.
References bm::free(), folly::init(), bm::init(), testing::InitGoogleTest(), RUN_ALL_TESTS(), and folly::runBenchmarks().
size_t Skip_ForwardQ128 | ( | size_t | iters, |
size_t | logAvgSkip | ||
) |
Definition at line 205 of file EliasFanoCodingTest.cpp.
References BENCHMARK_NAMED_PARAM_MULTI, bm::data, folly::compression::dispatchInstructions(), and bm::list.
Referenced by BENCHMARK().
size_t SkipTo_SkipQ128 | ( | size_t | iters, |
size_t | logAvgSkip | ||
) |
Definition at line 230 of file EliasFanoCodingTest.cpp.
References BENCHMARK_NAMED_PARAM_MULTI, bm::data, folly::compression::dispatchInstructions(), and bm::list.
Referenced by BENCHMARK().
TEST | ( | EliasFanoCoding | , |
defaultNumLowerBits | |||
) |
Definition at line 43 of file EliasFanoCodingTest.cpp.
References a, b, folly::gen::batch(), EXPECT_EQ, i, max, min, and folly::size().
TEST_F | ( | EliasFanoCodingTest | , |
Empty | |||
) |
Definition at line 109 of file EliasFanoCodingTest.cpp.
TEST_F | ( | EliasFanoCodingTest | , |
Simple | |||
) |
Definition at line 113 of file EliasFanoCodingTest.cpp.
TEST_F | ( | EliasFanoCodingTest | , |
SkipPointers | |||
) |
Definition at line 118 of file EliasFanoCodingTest.cpp.
TEST_F | ( | EliasFanoCodingTest | , |
ForwardPointers | |||
) |
Definition at line 123 of file EliasFanoCodingTest.cpp.
TEST_F | ( | EliasFanoCodingTest | , |
SkipForwardPointers | |||
) |
Definition at line 128 of file EliasFanoCodingTest.cpp.
TEST_F | ( | EliasFanoCodingTest | , |
BugLargeGapInUpperBits | |||
) |
Definition at line 133 of file EliasFanoCodingTest.cpp.
References ASSERT_EQ, ASSERT_TRUE, folly::data(), encode(), bm::encodeLargeData, bm::encodeSmallData, folly::compression::BitVectorCompressedListBase< Pointer >::free(), i, bm::list, order, and uint32_t.