44 constexpr std::uint64_t
soup_seed = 0xB7EED50FCA000001ull;
51 std::bernoulli_distribution alive(0.5);
53 for (std::int64_t x = 0; x <
soup_side; ++x)
Shared harness for the cellular-automata performance-gate anchors.
Hashlife engine for outer-totalistic binary cellular automata.
size_t blossom_maximum_cardinality_matching(const GT &g, DynDlist< typename GT::Arc * > &matching, SA sa=SA())
Alias of compute_maximum_cardinality_general_matching().
std::size_t resolve_repeats(const std::size_t fallback)
Resolve the number of timed repetitions for one anchor.
void emit_json(const Bench_Result &result, std::ostream &out=std::cout)
Print one benchmark result as a single structured JSON object.
Bench_Result measure(std::string name, const double processed_cells, std::size_t repeats, Work &&work)
Time a kernel with one warmup pass plus a median of timed passes.
Outcome of one measured anchor benchmark.
Hashlife engine for outer-totalistic binary cellular automata.