123456789101112131415161718192021222324252627282930313233343536openCore(* default columns for command *)letcolumns_as_string=["time";"alloc";"percentage"]letcommand_columns=List.map~f:Bench_command_column.of_stringcolumns_as_string(* how to measure *)letgeometric_scale=1.01letstabilize_gc_between_runs=falseletno_compactions=false(* how long to measure *)letquota=Quota.Span(Time_float.Span.of_int_sec10)(* width of the output table *)letlimit_width_to=200letmax_name_length=110(* Fork each benchmark and run in separate process *)letfork_each_benchmark=false(* default display *)letdisplay_as_string="short"letstring_to_display=letmoduleDisplay=Ascii_table_kernel.Displayinfunction|"short"->Display.short_box|"tall"->Display.tall_box|"line"->Display.line|"blank"->Display.blank|"column"->Display.column_titles|s->failwithf"Invalid display name: %s"s();;letdisplay=string_to_displaydisplay_as_string