MCPcopy Create free account
hub / github.com/ConorWilliams/libfork / uts_libfork

Function uts_libfork

bench/source/uts/libfork.cpp:129–151  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

127
128template <lf::scheduler Sch, lf::numa_strategy Strategy>
129void uts_libfork(benchmark::State &state, int tree) {
130
131 state.counters["green_threads"] = state.range(0);
132
133 Sch sch(state.range(0));
134
135 setup_tree(tree);
136
137 volatile int depth = 0;
138 Node root;
139
140 result r;
141
142 for (auto _ : state) {
143 uts_initRoot(&root, type);
144 r = sync_wait(sch, uts, depth, &root);
145 // std::cout << "maxdepth: " << r.maxdepth << " size: " << r.size << " leaves: " << r.leaves << std::endl;
146 }
147
148 if (r != result_tree(tree)) {
149 std::cerr << "lf uts " << tree << " failed" << std::endl;
150 }
151}
152
153void uts_libfork_coalloc_lazy_seq(benchmark::State &state, int tree) {
154 uts_libfork<lf::lazy_pool, lf::numa_strategy::seq>(state, tree);

Callers

nothing calls this directly

Calls 4

setup_treeFunction · 0.85
uts_initRootFunction · 0.85
sync_waitFunction · 0.85
result_treeFunction · 0.85

Tested by

no test coverage detected