@@ -1,5 +1,6 @@
1const puppeteer = require('puppeteer');
1const puppeteer = require('puppeteer');
2const benchPage = require('./benchPage');
2const benchPage = require('./benchPage');
3+const chalk = require('chalk');
3var compileToString = require("node-elm-compiler").compileToString;
4var compileToString = require("node-elm-compiler").compileToString;
4const fs = require('fs');
5const fs = require('fs');
@@ -98,42 +99,26 @@ async function writeResults(allResults, resultsDir, name) {
100 var instances = [
101 var instances = [
101− { module: "Baseline", group: null, value: "bench" }
102− , { module: "ManyElements", group: "elmUI", count: 1024, value: "elmUI1024" }
102+ { module: "ManyElements", group: "elmUI", count: 1024, value: "elmUI1024" }
103− // , { module: "ManyElements", group: "elmUI", count: 128, value: "elmUI128" }
103+ , { module: "ManyElements", group: "elmUI", count: 128, value: "elmUI128" }
104 , { module: "ManyElements", group: "elmUI", count: 2048, value: "elmUI2048" }
104 , { module: "ManyElements", group: "elmUI", count: 2048, value: "elmUI2048" }
105 , { module: "ManyElements", group: "elmUI", count: 24, value: "elmUI24" }
105 , { module: "ManyElements", group: "elmUI", count: 24, value: "elmUI24" }
106− // , { module: "ManyElements", group: "elmUI", count: 256, value: "elmUI256" }
107 , { module: "ManyElements", group: "elmUI", count: 4096, value: "elmUI4096" }
106 , { module: "ManyElements", group: "elmUI", count: 4096, value: "elmUI4096" }
108− // , { module: "ManyElements", group: "elmUI", count: 512, value: "elmUI512" }
109− // , { module: "ManyElements", group: "elmUI", count: 64, value: "elmUI64" }
110 , { module: "ManyElements", group: "elmUI", count: 8192, value: "elmUI8192" }
107 , { module: "ManyElements", group: "elmUI", count: 8192, value: "elmUI8192" }
111 , { module: "ManyElements", group: "elmUIVCSS", count: 1024, value: "elmUIVCSS1024" }
108 , { module: "ManyElements", group: "elmUIVCSS", count: 1024, value: "elmUIVCSS1024" }
112− // , { module: "ManyElements", group: "elmUIVCSS", count: 128, value: "elmUIVCSS128" }
113 , { module: "ManyElements", group: "elmUIVCSS", count: 2048, value: "elmUIVCSS2048" }
109 , { module: "ManyElements", group: "elmUIVCSS", count: 2048, value: "elmUIVCSS2048" }
114 , { module: "ManyElements", group: "elmUIVCSS", count: 24, value: "elmUIVCSS24" }
110 , { module: "ManyElements", group: "elmUIVCSS", count: 24, value: "elmUIVCSS24" }
115− // , { module: "ManyElements", group: "elmUIVCSS", count: 256, value: "elmUIVCSS256" }
116 , { module: "ManyElements", group: "elmUIVCSS", count: 4096, value: "elmUIVCSS4096" }
111 , { module: "ManyElements", group: "elmUIVCSS", count: 4096, value: "elmUIVCSS4096" }
117− // , { module: "ManyElements", group: "elmUIVCSS", count: 512, value: "elmUIVCSS512" }
118− // , { module: "ManyElements", group: "elmUIVCSS", count: 64, value: "elmUIVCSS64" }
119 , { module: "ManyElements", group: "elmUIVCSS", count: 8192, value: "elmUIVCSS8192" }
112 , { module: "ManyElements", group: "elmUIVCSS", count: 8192, value: "elmUIVCSS8192" }
120 , { module: "ManyElements", group: "viewHtml", count: 1024, value: "viewHtml1024" }
113 , { module: "ManyElements", group: "viewHtml", count: 1024, value: "viewHtml1024" }
121− // , { module: "ManyElements", group: "viewHtml", count: 128, value: "viewHtml128" }
122 , { module: "ManyElements", group: "viewHtml", count: 2048, value: "viewHtml2048" }
114 , { module: "ManyElements", group: "viewHtml", count: 2048, value: "viewHtml2048" }
123 , { module: "ManyElements", group: "viewHtml", count: 24, value: "viewHtml24" }
115 , { module: "ManyElements", group: "viewHtml", count: 24, value: "viewHtml24" }
124− // , { module: "ManyElements", group: "viewHtml", count: 256, value: "viewHtml256" }
125 , { module: "ManyElements", group: "viewHtml", count: 4096, value: "viewHtml4096" }
116 , { module: "ManyElements", group: "viewHtml", count: 4096, value: "viewHtml4096" }
126− // , { module: "ManyElements", group: "viewHtml", count: 512, value: "viewHtml512" }
127− // , { module: "ManyElements", group: "viewHtml", count: 64, value: "viewHtml64" }
128 , { module: "ManyElements", group: "viewHtml", count: 8192, value: "viewHtml8192" }
117 , { module: "ManyElements", group: "viewHtml", count: 8192, value: "viewHtml8192" }
129 , { module: "ManyElements", group: "viewInline", count: 1024, value: "viewInline1024" }
118 , { module: "ManyElements", group: "viewInline", count: 1024, value: "viewInline1024" }
130− // , { module: "ManyElements", group: "viewInline", count: 128, value: "viewInline128" }
131 , { module: "ManyElements", group: "viewInline", count: 2048, value: "viewInline2048" }
119 , { module: "ManyElements", group: "viewInline", count: 2048, value: "viewInline2048" }
132 , { module: "ManyElements", group: "viewInline", count: 24, value: "viewInline24" }
120 , { module: "ManyElements", group: "viewInline", count: 24, value: "viewInline24" }
133− // , { module: "ManyElements", group: "viewInline", count: 256, value: "viewInline256" }
134 , { module: "ManyElements", group: "viewInline", count: 4096, value: "viewInline4096" }
121 , { module: "ManyElements", group: "viewInline", count: 4096, value: "viewInline4096" }
135− // , { module: "ManyElements", group: "viewInline", count: 512, value: "viewInline512" }
136− // , { module: "ManyElements", group: "viewInline", count: 64, value: "viewInline64" }
137 , { module: "ManyElements", group: "viewInline", count: 8192, value: "viewInline8192" }
122 , { module: "ManyElements", group: "viewInline", count: 8192, value: "viewInline8192" }
@@ -156,6 +141,7 @@ async function writeResults(allResults, resultsDir, name) {
156 fs.mkdirSync(`./${resultsDir}/${resultName}/instances/`, { recursive: true });
141 fs.mkdirSync(`./${resultsDir}/${resultName}/instances/`, { recursive: true });
144+ console.log(`Beginning benchmark for ${resultName} →`)
160 for (var i = 0; i < instances.length; i++) {
146 for (var i = 0; i < instances.length; i++) {
161 var item = instances[i]
147 var item = instances[i]
@@ -174,7 +160,8 @@ async function writeResults(allResults, resultsDir, name) {
174 results.group = item.group
160 results.group = item.group
175 results.count = item.count
161 results.count = item.count
176 await page.close()
162 await page.close()
177− console.log(results)
163+ // console.log(results)
164+ console.log(" Benchmark of " + chalk.green(`${item.module}.${item.value}`) + " complete")
178 allResults.push(results)
165 allResults.push(results)
180 await browser.close();
167 await browser.close();
@@ -182,5 +169,8 @@ async function writeResults(allResults, resultsDir, name) {
182 allResults = regroupResults(allResults)
169 allResults = regroupResults(allResults)
184 writeResults(allResults, resultsDir, resultName)
171 writeResults(allResults, resultsDir, resultName)
173+ console.log("Benchmark complete")
174+ console.log(" → " + chalk.green(`${resultsDir}/${resultName}/index.html`))