From e6068cd9a530e3b992e4156c891cb0a793fdd814 Mon Sep 17 00:00:00 2001 From: lightmare Date: Mon, 28 Jun 2021 11:57:15 +0200 Subject: [PATCH] enhance benchmark output with thousands separators (#13512) --- .../benchmark/util.mjs | 12 ++++++++---- packages/babel-parser/benchmark/util.mjs | 12 ++++++++---- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/packages/babel-helper-validator-identifier/benchmark/util.mjs b/packages/babel-helper-validator-identifier/benchmark/util.mjs index f88a43b54c..086f8e039e 100644 --- a/packages/babel-helper-validator-identifier/benchmark/util.mjs +++ b/packages/babel-helper-validator-identifier/benchmark/util.mjs @@ -1,13 +1,17 @@ export function report(event) { const bench = event.target; - const factor = bench.hz < 100 ? 100 : 1; const timeMs = bench.stats.mean * 1000; const time = timeMs < 10 ? `${Math.round(timeMs * 1000) / 1000}ms` : `${Math.round(timeMs)}ms`; - const msg = `${bench.name}: ${ - Math.round(bench.hz * factor) / factor - } ops/sec ±${Math.round(bench.stats.rme * 100) / 100}% (${time})`; + const msg = `${bench.name}: ${formatNumber(bench.hz)} ops/sec ±${ + Math.round(bench.stats.rme * 100) / 100 + }% (${time})`; console.log(msg); } + +function formatNumber(x) { + if (x < 100) return `${Math.round(x * 100) / 100}`; + return `${Math.round(x)}`.replace(/\d(?=(?:\d{3})+$)/g, "$&_"); +} diff --git a/packages/babel-parser/benchmark/util.mjs b/packages/babel-parser/benchmark/util.mjs index f88a43b54c..086f8e039e 100644 --- a/packages/babel-parser/benchmark/util.mjs +++ b/packages/babel-parser/benchmark/util.mjs @@ -1,13 +1,17 @@ export function report(event) { const bench = event.target; - const factor = bench.hz < 100 ? 100 : 1; const timeMs = bench.stats.mean * 1000; const time = timeMs < 10 ? `${Math.round(timeMs * 1000) / 1000}ms` : `${Math.round(timeMs)}ms`; - const msg = `${bench.name}: ${ - Math.round(bench.hz * factor) / factor - } ops/sec ±${Math.round(bench.stats.rme * 100) / 100}% (${time})`; + const msg = `${bench.name}: ${formatNumber(bench.hz)} ops/sec ±${ + Math.round(bench.stats.rme * 100) / 100 + }% (${time})`; console.log(msg); } + +function formatNumber(x) { + if (x < 100) return `${Math.round(x * 100) / 100}`; + return `${Math.round(x)}`.replace(/\d(?=(?:\d{3})+$)/g, "$&_"); +}