aboutsummaryrefslogtreecommitdiffstats
path: root/site/pure.mjs
diff options
context:
space:
mode:
authorbrian cully <bjc@spork.org>2025-12-29 12:36:31 -0500
committerbrian cully <bjc@spork.org>2025-12-29 12:36:31 -0500
commitfda2373d81929dda9d0206d30cf4e3c1710859f1 (patch)
tree8df98419c07eb5d575c0580996d47f3a5d894dda /site/pure.mjs
parentd4cb9d1f99ee2515b56bca0bb4ed3011b5d39d84 (diff)
downloadpolyring-fda2373d81929dda9d0206d30cf4e3c1710859f1.tar.gz
polyring-fda2373d81929dda9d0206d30cf4e3c1710859f1.zip
pure benching
Diffstat (limited to 'site/pure.mjs')
-rw-r--r--site/pure.mjs18
1 files changed, 18 insertions, 0 deletions
diff --git a/site/pure.mjs b/site/pure.mjs
index e43380c..03b5996 100644
--- a/site/pure.mjs
+++ b/site/pure.mjs
@@ -259,6 +259,24 @@ export default async function () {
}
};
+ const benchButton = document.querySelector('section.bench button');
+ benchButton.onclick = e => {
+ console.debug('bench clicked');
+
+ const iters = Number(document.querySelector('section.bench input').value);
+
+ const start = self.performance.now();
+ for (let i = 0; i < iters; i++) {
+ update(points);
+ }
+ const end = self.performance.now();
+ const delta = end - start;
+ const iters_per_ms = iters / delta;
+
+ const results = document.querySelector('section.bench .results');
+ results.textContent = `${iters} iters in ${delta.toFixed(2)} ms (${iters_per_ms.toFixed(2)} iters per ms)`;
+ }
+
let interCount = 1;
function render(t) {
update(points);