From ac36db45f759790b76b2eca712413752260aa285 Mon Sep 17 00:00:00 2001 From: Wilson Lin Date: Sun, 5 Jan 2020 15:18:53 +1100 Subject: [PATCH] Improve graphs --- README.md | 2 ++ bench/bench.js | 79 +++++++++++++++++++++-------------------- bench/minification.png | Bin 32709 -> 35366 bytes bench/speed.png | Bin 10384 -> 10310 bytes 4 files changed, 43 insertions(+), 38 deletions(-) diff --git a/README.md b/README.md index 5c64433..179ff68 100644 --- a/README.md +++ b/README.md @@ -15,6 +15,8 @@ Available as: ## Performance +Speed and effectiveness of Node.js version compared to other JS minifiers. + ![Chart showing speed of HTML minifiers](./bench/speed.png) ![Chart showing effectiveness of HTML minifiers](./bench/minification.png) ## Usage diff --git a/bench/bench.js b/bench/bench.js index 10de739..cb3dd93 100644 --- a/bench/bench.js +++ b/bench/bench.js @@ -15,7 +15,7 @@ const tests = fs.readdirSync(testsDir).map(name => ({ })); const programs = { - 'hyperbuild-nodejs': content => hyperbuild.minify(Buffer.from(content)), + 'hyperbuild-nodejs': content => hyperbuild.minify_in_place(Buffer.from(content)), 'html-minifier': content => htmlMinifier.minify(content, { caseSensitive: false, collapseBooleanAttributes: true, @@ -67,42 +67,44 @@ const colours = [ borderColor: '#4bc0c0', }, ]; -const renderChart = async (file, title, cfg) => { - const chart = new chartjs(435, 320); - await chart.drawChart({ - ...cfg, - options: { - title: { - display: true, - text: title, - }, - scales: { - xAxes: [{ - barPercentage: 0.5, - gridLines: { - color: '#ccc', - }, - ticks: { - fontColor: '#222', - }, - }], - yAxes: [{ - gridLines: { - color: '#666', - }, - ticks: { - fontColor: '#222', - }, - }], - }, - legend: { - labels: { - fontFamily: 'Ubuntu, sans-serif', - fontColor: '#000', +const chartOptions = (title, displayLegend, yTick = t => t) => ({ + options: { + title: { + display: true, + text: title, + }, + scales: { + xAxes: [{ + barPercentage: 0.5, + gridLines: { + color: '#ccc', }, + ticks: { + fontColor: '#222', + }, + }], + yAxes: [{ + gridLines: { + color: '#666', + }, + ticks: { + callback: yTick, + fontColor: '#222', + }, + }], + }, + legend: { + display: displayLegend, + labels: { + fontFamily: 'Ubuntu, sans-serif', + fontColor: '#000', }, }, - }); + }, +}); +const renderChart = async (file, cfg) => { + const chart = new chartjs(435, 320); + await chart.drawChart(cfg); await chart.writeImageToFile('image/png', path.join(__dirname, `${file}.png`)); }; @@ -154,21 +156,21 @@ suite count: b.count, ops: b.hz, })).sort((a, b) => a.hz - b.hz); - await renderChart('speed', 'Minification speed', { + await renderChart('speed', { type: 'bar', data: { labels: speedResults.map(r => r.name), datasets: [{ - label: 'Operations per second', ...colours[0], data: speedResults.map(r => r.ops), }], }, + ...chartOptions('Operations per second (higher is better)', false), }); const testNames = Object.keys(sizes); const programNames = Object.keys(programs); - await renderChart('minification', 'Relative minified HTML file size', { + await renderChart('minification', { type: 'bar', scaleFontColor: 'red', data: { @@ -176,9 +178,10 @@ suite datasets: programNames.map((program, i) => ({ label: program, ...colours[i], - data: testNames.map(test => sizes[test][program].relative), + data: testNames.map(test => sizes[test][program].relative * 100), })), }, + ...chartOptions('Relative minified HTML file size (lower is better)', true, tick => `${tick}%`), }); }) .run({'async': true}); diff --git a/bench/minification.png b/bench/minification.png index b90d9b968ac82a1967bbe15230f32bd2dee086a0..ed70b8b7af78de6bf00ad60c9873a58a12c42713 100644 GIT binary patch literal 35366 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 diff --git a/bench/speed.png b/bench/speed.png index bcb19cc6c3c61c2dd8125b11ba41fc7bdca32e1b..f14ac6e33ea7c593e024f38c860b65e924644878 100644 GIT binary patch literal 10310 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 nI!Aptk(7e@zb_