From dba20f1e7c4bfde507519b167512600ac8380ec4 Mon Sep 17 00:00:00 2001 From: Chris Duncan Date: Mon, 6 Jan 2025 12:25:12 -0800 Subject: [PATCH] Note long benchmark run. --- benchmarks.md | 37 ++++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/benchmarks.md b/benchmarks.md index 7407db4..fccbbf6 100644 --- a/benchmarks.md +++ b/benchmarks.md @@ -1,14 +1,14 @@ -Total: 89756 ms block.perf.js:76:10 -Average: 5609.75 ms block.perf.js:77:10 -Harmonic: 2092.567565254879 ms block.perf.js:78:10 -Geometric: 3612.112662613675 ms block.perf.js:79:10 +Total: 89756 ms +Average: 5609.75 ms +Harmonic: 2092.567565254879 ms +Geometric: 3612.112662613675 ms PASS Original PoW module: Time to calculate proof-of-work for a send block 16 times -Total: 33240 ms block.perf.js:57:10 -Average: 2077.5 ms block.perf.js:58:10 -Harmonic: 1328.5635414262717 ms block.perf.js:59:10 -Geometric: 1663.110986923899 ms block.perf.js:60:10 +Total: 33240 ms +Average: 2077.5 ms +Harmonic: 1328.5635414262717 ms +Geometric: 1663.110986923899 ms PASS Customized PoW: Time to calculate proof-of-work for a send block 16 times How much faster? @@ -22,25 +22,28 @@ The proof-of-work equation for Nano cryptocurrency is defined as `blake2b(nonce| My code currently finds valid nonces on a gaming GPU without issue but only because the initial search space is so large due to using a workgroup size of 256 and a dispatch of (256, 256, 256), so the probability of finding a nonce in the first pass is extremely high. However, this does not perform well on less powerful hardware like smartphones. Please alter my code to perform the nonce search in `main()` in a loop until a valid nonce is found with the idea that a smaller workgroup size and/or smaller dispatch dimensions can allow weak hardware to nonetheless iterate through nonces to search for a valid one and return it. -Total: 680948 ms block.perf.js:56:10 -Average: 1329.9765625 ms block.perf.js:57:10 -Harmonic: 749.6552658409396 ms block.perf.js:58:10 -Geometric: Infinity ms block.perf.js:59:10 +Total: 680948 ms +Average: 1329.9765625 ms +Harmonic: 749.6552658409396 ms PASS Customized PoW: Time to calculate proof-of-work for a send block 512 times -/media/plex/Shows/STAR_TREK_DISCOVERY_S1_D1/STAR_TREK_DISCOVERY (Season 1 Disc 1) CHROMIUM with more accurate timings Total: 187428.40000000596 ms Average: 366.07109375001164 ms Harmonic: 220.70399520519166 ms -Geometric: Infinity ms Customized PoW: Time to calculate proof-of-work for a send block 512 times Total: 187827.7999998629 ms -block.perf.js:57 Average: 366.85117187473224 ms -block.perf.js:58 Harmonic: 223.9897252426498 ms -block.perf.js:59 Geometric: Infinity ms +Average: 366.85117187473224 ms +Harmonic: 223.9897252426498 ms GLOBALS.mjs:42 PASS Customized PoW: Time to calculate proof-of-work for a send block 512 times + +Total: 2934170.3000008166 ms +Average: 358.17508544931843 ms +Harmonic: 218.11823673331645 ms +Minimum: 76.2000000178814 ms +Maximum: 2999.9000000059605 ms +GLOBALS.mjs:46 PASS Customized PoW: Time to calculate proof-of-work for a send block 8192 times -- 2.34.1