From 1a2e1fff7ce4b8fd8db46549d81e71e76b842da3 Mon Sep 17 00:00:00 2001 From: Kimplul Date: Fri, 30 Aug 2024 18:56:49 +0300 Subject: add some basic benchmarks --- benchmarks/fork/init.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 benchmarks/fork/init.c (limited to 'benchmarks/fork/init.c') diff --git a/benchmarks/fork/init.c b/benchmarks/fork/init.c new file mode 100644 index 0000000..95f6466 --- /dev/null +++ b/benchmarks/fork/init.c @@ -0,0 +1,27 @@ +#include + +START(pid, tid, d0, d1, d2, d3) +{ + UNUSED(pid); + UNUSED(tid); + UNUSED(d0); + UNUSED(d1); + UNUSED(d2); + UNUSED(d3); + + uint64_t timebase = sys_timebase(); + uint64_t start = sys_ticks(); + + for (size_t i = 0; i < 1000; ++i) { + id_t our_tid = 0; + id_t new_id = sys_fork(&our_tid); + if (new_id == 0) { + /* child instantly dies */ + sys_exit(1); + } + sys_swap(new_id); + } + + uint64_t end = sys_ticks(); + report(start, end, timebase); +} -- cgit v1.3