function benchTable(...args) {
const $view = html`<progress style="margin-right:.5em;width:5em"></progress><output style="font:13px var(--sans-serif)">Running benchmark...</output>`;
bench(...args).then(results => {
const table = md`
## ${args[0]}
<table style="max-width: 100%">
<thead>
<tr>
<th style="text-align:left">Ok</th>
<th style="text-align:right">Iterations</th>
<th style="text-align:right">Elapsed</th>
<th style="text-align:right">Rate</th>
<th style="text-align:right">Benchmark</th>
</tr>
</thead>
<tbody>
${results.filter(
r => r.type === 'result'
).map(
e =>
html`<tr>
<td>${e.ok}</td>
<td style="text-align:right; font-variant-numeric: tabular-nums">${commas(
e.iterations
)}</td>
<td style="text-align:right; font-variant-numeric: tabular-nums">${fmt(
e.elapsed
)} ms</td>
<td style="text-align:right; font-variant-numeric: tabular-nums">${fmt(
e.rate
)} ops/s</td>
<td style="text-align:right; font-variant-numeric: tabular-nums">${
e.benchmark
}</td>
</tr>`
)}
</tbody>
</table>
`;
$view.replaceWith(table);
});
return $view;
}