]> zoso.dev Git - libnemo.git/log
libnemo.git
3 months agoSimplify imports with additional path mappings. Remove deprecated worker code from...
Chris Duncan [Wed, 8 Jan 2025 15:30:56 +0000 (07:30 -0800)]
Simplify imports with additional path mappings. Remove deprecated worker code from pow classes now that it is handled externally.

3 months agoOverhaul project structure by separating NanoPow code from its worker interface,...
Chris Duncan [Wed, 8 Jan 2025 15:10:08 +0000 (07:10 -0800)]
Overhaul project structure by separating NanoPow code from its worker interface, consolidating test and performance code into one directory, creating additional import path mappings, and renaming files in general.

3 months agoFix name references for pow objects.
Chris Duncan [Wed, 8 Jan 2025 13:43:34 +0000 (05:43 -0800)]
Fix name references for pow objects.

3 months agoReorganize NanoPow into its own package.
Chris Duncan [Wed, 8 Jan 2025 13:29:48 +0000 (05:29 -0800)]
Reorganize NanoPow into its own package.

3 months agoOffload shader code to separate file.
Chris Duncan [Wed, 8 Jan 2025 05:01:07 +0000 (21:01 -0800)]
Offload shader code to separate file.

3 months agoIndicate units when bit shift constructing ID/
Chris Duncan [Wed, 8 Jan 2025 01:24:18 +0000 (17:24 -0800)]
Indicate units when bit shift constructing ID/

3 months agoUpload new bundle for platform testing.
Chris Duncan [Tue, 7 Jan 2025 22:34:10 +0000 (14:34 -0800)]
Upload new bundle for platform testing.

3 months agoImplement device lost promise property to handle loss gracefully by reinitializing...
Chris Duncan [Tue, 7 Jan 2025 22:33:28 +0000 (14:33 -0800)]
Implement device lost promise property to handle loss gracefully by reinitializing. Adjust try-catch error logging message and just retry search instead of reinitializing class.

3 months agoUpload new bundle for platform testing.
Chris Duncan [Tue, 7 Jan 2025 22:12:21 +0000 (14:12 -0800)]
Upload new bundle for platform testing.

3 months agoFix class reference used for static members within static context when this should...
Chris Duncan [Tue, 7 Jan 2025 22:11:52 +0000 (14:11 -0800)]
Fix class reference used for static members within static context when this should be used. Small change to initialization so class can be reloaded if necessary. Implement try-catch if getting data from GPU throws so we can reinitialize.

3 months agoFix test page header.
Chris Duncan [Tue, 7 Jan 2025 22:06:07 +0000 (14:06 -0800)]
Fix test page header.

3 months agoUpload new bundle for platform testing.
Chris Duncan [Tue, 7 Jan 2025 21:52:55 +0000 (13:52 -0800)]
Upload new bundle for platform testing.

3 months agoFix block perf test suite messages.
Chris Duncan [Tue, 7 Jan 2025 21:45:41 +0000 (13:45 -0800)]
Fix block perf test suite messages.

3 months agoExtend time interval between check for GPU device to save mobile device cycles.
Chris Duncan [Tue, 7 Jan 2025 21:45:24 +0000 (13:45 -0800)]
Extend time interval between check for GPU device to save mobile device cycles.

3 months agoCouple more benchmarks.
Chris Duncan [Tue, 7 Jan 2025 21:38:28 +0000 (13:38 -0800)]
Couple more benchmarks.

3 months agoThrottle back workgroup size since apparently this value works with GPUs better and...
Chris Duncan [Tue, 7 Jan 2025 21:38:18 +0000 (13:38 -0800)]
Throttle back workgroup size since apparently this value works with GPUs better and we're still checking over a billion nonces per dispatch; the probability of finding a nonce at this level is over 99.9%

3 months agoRefactor GPU device loading to avoid high promise stack.
Chris Duncan [Tue, 7 Jan 2025 21:31:06 +0000 (13:31 -0800)]
Refactor GPU device loading to avoid high promise stack.

3 months agoSwitch block back to PowGpu.
Chris Duncan [Tue, 7 Jan 2025 21:29:22 +0000 (13:29 -0800)]
Switch block back to PowGpu.

3 months agoSet up canvas size for proper pow comparison testing.
Chris Duncan [Tue, 7 Jan 2025 21:29:10 +0000 (13:29 -0800)]
Set up canvas size for proper pow comparison testing.

3 months agoRestore all block performance tests. Fix PowGl execution.
Chris Duncan [Tue, 7 Jan 2025 21:06:21 +0000 (13:06 -0800)]
Restore all block performance tests. Fix PowGl execution.

3 months agoMerge redundant find function with calculate to form search function like PowGpu...
Chris Duncan [Tue, 7 Jan 2025 20:32:19 +0000 (12:32 -0800)]
Merge redundant find function with calculate to form search function like PowGpu. Implement more of a promise-based pipeline through PowGl calculations.

3 months agoInline G mix function addition steps to eliminate a function call.
Chris Duncan [Tue, 7 Jan 2025 14:49:32 +0000 (06:49 -0800)]
Inline G mix function addition steps to eliminate a function call.

3 months agoLog some more benchmarks. Switch back to PowGl for blocks, with the plan to later...
Chris Duncan [Tue, 7 Jan 2025 13:54:18 +0000 (05:54 -0800)]
Log some more benchmarks. Switch back to PowGl for blocks, with the plan to later make PowGpu available behind a flag.

3 months agoGet rid of extraneous logging in PowGl.
Chris Duncan [Tue, 7 Jan 2025 13:42:30 +0000 (05:42 -0800)]
Get rid of extraneous logging in PowGl.

3 months agoRename and export PowGl for systems that don't support WebGPU. Update some other...
Chris Duncan [Tue, 7 Jan 2025 13:41:06 +0000 (05:41 -0800)]
Rename and export PowGl for systems that don't support WebGPU. Update some other names.

3 months agoAvoid loading nano-webgl-pow entirely. Upload bundle for platform testing.
Chris Duncan [Tue, 7 Jan 2025 04:46:33 +0000 (20:46 -0800)]
Avoid loading nano-webgl-pow entirely. Upload bundle for platform testing.

3 months agoRemove final unused v array pointer.
Chris Duncan [Tue, 7 Jan 2025 02:33:15 +0000 (18:33 -0800)]
Remove final unused v array pointer.

3 months agoReplace v[d] indexes with pointers.
Chris Duncan [Tue, 7 Jan 2025 02:31:04 +0000 (18:31 -0800)]
Replace v[d] indexes with pointers.

3 months agoReplace v[c] indexes with pointers.
Chris Duncan [Tue, 7 Jan 2025 02:26:32 +0000 (18:26 -0800)]
Replace v[c] indexes with pointers.

3 months agoReplace v[b] indexes with pointers.
Chris Duncan [Tue, 7 Jan 2025 01:57:00 +0000 (17:57 -0800)]
Replace v[b] indexes with pointers.

3 months agoRemove replaced v[a] arguments.
Chris Duncan [Tue, 7 Jan 2025 01:55:04 +0000 (17:55 -0800)]
Remove replaced v[a] arguments.

3 months agoRemove v array now that individual variables have been confirmed.
Chris Duncan [Tue, 7 Jan 2025 01:39:23 +0000 (17:39 -0800)]
Remove v array now that individual variables have been confirmed.

3 months agoTry updating G mix function again; rounds need to be updated next.
Chris Duncan [Tue, 7 Jan 2025 01:38:48 +0000 (17:38 -0800)]
Try updating G mix function again; rounds need to be updated next.

3 months agoRevert array pointer dereferencing to troubleshoot invalid nonces.
Chris Duncan [Tue, 7 Jan 2025 01:27:44 +0000 (17:27 -0800)]
Revert array pointer dereferencing to troubleshoot invalid nonces.

3 months agoRevert some pointer implementations due to incorrect nonces now.
Chris Duncan [Tue, 7 Jan 2025 01:21:39 +0000 (17:21 -0800)]
Revert some pointer implementations due to incorrect nonces now.

3 months agoFix variable name.
Chris Duncan [Tue, 7 Jan 2025 00:50:08 +0000 (16:50 -0800)]
Fix variable name.

3 months agoRefactor returned promises.
Chris Duncan [Tue, 7 Jan 2025 00:30:41 +0000 (16:30 -0800)]
Refactor returned promises.

3 months agonotes
Chris Duncan [Mon, 6 Jan 2025 22:42:54 +0000 (14:42 -0800)]
notes

3 months agoFix this later.
Chris Duncan [Mon, 6 Jan 2025 22:41:58 +0000 (14:41 -0800)]
Fix this later.

3 months agoThrow more specific error during search call. Revert workload again since research...
Chris Duncan [Mon, 6 Jan 2025 22:31:16 +0000 (14:31 -0800)]
Throw more specific error during search call. Revert workload again since research is saying mobile devices should be able to handle workgroups of 256.

3 months agoUpload bundle for platform testing.
Chris Duncan [Mon, 6 Jan 2025 21:14:31 +0000 (13:14 -0800)]
Upload bundle for platform testing.

3 months agoSet workload dynamically based on hardware.
Chris Duncan [Mon, 6 Jan 2025 21:13:26 +0000 (13:13 -0800)]
Set workload dynamically based on hardware.

3 months agoEliminate redundant find function. Rename #calculate to search in order to both bette...
Chris Duncan [Mon, 6 Jan 2025 20:54:37 +0000 (12:54 -0800)]
Eliminate redundant find function. Rename #calculate to search in order to both better represent its purpose as well as work around Safari limitation on private class methods.

3 months agoNote long benchmark run.
Chris Duncan [Mon, 6 Jan 2025 20:25:12 +0000 (12:25 -0800)]
Note long benchmark run.

3 months agoSkip nano-webgl-pow test comparison for now.
Chris Duncan [Mon, 6 Jan 2025 19:28:37 +0000 (11:28 -0800)]
Skip nano-webgl-pow test comparison for now.

3 months agoUpload bundle for testing.
Chris Duncan [Mon, 6 Jan 2025 19:27:15 +0000 (11:27 -0800)]
Upload bundle for testing.

3 months agoConvert first of four v accessors to pointer references.
Chris Duncan [Mon, 6 Jan 2025 19:24:30 +0000 (11:24 -0800)]
Convert first of four v accessors to pointer references.

3 months agoBenchmark min and max times, and add another round of testing.
Chris Duncan [Mon, 6 Jan 2025 19:24:02 +0000 (11:24 -0800)]
Benchmark min and max times, and add another round of testing.

3 months agoMove benchmarks notes and add new timings.
Chris Duncan [Mon, 6 Jan 2025 18:59:54 +0000 (10:59 -0800)]
Move benchmarks notes and add new timings.

3 months agoWait a maximum of 8 seconds to load GPU.
Chris Duncan [Mon, 6 Jan 2025 17:37:04 +0000 (09:37 -0800)]
Wait a maximum of 8 seconds to load GPU.

3 months agoRemove outdated documentation comment.
Chris Duncan [Mon, 6 Jan 2025 17:02:13 +0000 (09:02 -0800)]
Remove outdated documentation comment.

3 months agoEliminate m array. Fix nonce construction.
Chris Duncan [Mon, 6 Jan 2025 16:31:20 +0000 (08:31 -0800)]
Eliminate m array. Fix nonce construction.

3 months agoPass literal zeros since these array indexes are never initialized.
Chris Duncan [Mon, 6 Jan 2025 15:28:23 +0000 (07:28 -0800)]
Pass literal zeros since these array indexes are never initialized.

3 months agoYep, it was an issue.
Chris Duncan [Mon, 6 Jan 2025 15:00:38 +0000 (07:00 -0800)]
Yep, it was an issue.

3 months agoDelete unused parameter.
Chris Duncan [Mon, 6 Jan 2025 14:54:46 +0000 (06:54 -0800)]
Delete unused parameter.

3 months agoUpdate G mix rounds 6-11.
Chris Duncan [Mon, 6 Jan 2025 14:53:24 +0000 (06:53 -0800)]
Update G mix rounds 6-11.

3 months agoUpdate G mix round 5 (round 4 was done in previous commit).
Chris Duncan [Mon, 6 Jan 2025 14:41:27 +0000 (06:41 -0800)]
Update G mix round 5 (round 4 was done in previous commit).

3 months agoDocument odd difference between blake C reference implementation and nano-webgl-pow...
Chris Duncan [Mon, 6 Jan 2025 14:38:58 +0000 (06:38 -0800)]
Document odd difference between blake C reference implementation and nano-webgl-pow port that might need fixing later.

3 months agoUpdate G mix round 3.
Chris Duncan [Mon, 6 Jan 2025 13:47:55 +0000 (05:47 -0800)]
Update G mix round 3.

3 months agoUpdate G mix round 2.
Chris Duncan [Mon, 6 Jan 2025 13:45:35 +0000 (05:45 -0800)]
Update G mix round 2.

3 months agoIntermediate update to convert m array lookups to variables. Remaining 10 rounds...
Chris Duncan [Mon, 6 Jan 2025 13:39:40 +0000 (05:39 -0800)]
Intermediate update to convert m array lookups to variables. Remaining 10 rounds of G mixing must be converted still.

3 months agoSubstitute remaining SIGMA82 array lookups with literal values.
Chris Duncan [Mon, 6 Jan 2025 13:27:21 +0000 (05:27 -0800)]
Substitute remaining SIGMA82 array lookups with literal values.

3 months agoPush new bundle for testing.
Chris Duncan [Mon, 6 Jan 2025 07:37:41 +0000 (23:37 -0800)]
Push new bundle for testing.

3 months agoRestore SIGMA82 definition until substitution is complete. Substitute array indexes...
Chris Duncan [Mon, 6 Jan 2025 00:25:19 +0000 (16:25 -0800)]
Restore SIGMA82 definition until substitution is complete. Substitute array indexes for first 6 rounds, last 6 will come soon.

3 months agoStart eliminating SIGMA index lookups.
Chris Duncan [Mon, 6 Jan 2025 00:10:39 +0000 (16:10 -0800)]
Start eliminating SIGMA index lookups.

3 months agoRemove unused addition function.
Chris Duncan [Sun, 5 Jan 2025 23:32:23 +0000 (15:32 -0800)]
Remove unused addition function.

3 months agoDocument addition steps using structure from blake reference material.
Chris Duncan [Sun, 5 Jan 2025 23:31:19 +0000 (15:31 -0800)]
Document addition steps using structure from blake reference material.

3 months agoInline 64-bit addition to eliminate a function call.
Chris Duncan [Sun, 5 Jan 2025 22:40:10 +0000 (14:40 -0800)]
Inline 64-bit addition to eliminate a function call.

3 months agoBack up rolled-up shader code.
Chris Duncan [Sun, 5 Jan 2025 19:54:25 +0000 (11:54 -0800)]
Back up rolled-up shader code.

3 months agoReintroduce workload variable to allow hardware to control workgroup size, considered...
Chris Duncan [Sun, 5 Jan 2025 11:27:39 +0000 (03:27 -0800)]
Reintroduce workload variable to allow hardware to control workgroup size, considered most important control in that regard.

3 months agoAll arrays will eventually be deconstructed for performance, so start creating the...
Chris Duncan [Sun, 5 Jan 2025 11:24:33 +0000 (03:24 -0800)]
All arrays will eventually be deconstructed for performance, so start creating the variables now.

3 months agoRemove logging.
Chris Duncan [Sun, 5 Jan 2025 11:09:32 +0000 (03:09 -0800)]
Remove logging.

3 months agoSet local variable for UBO member to avoid slowly dereferencing it.
Chris Duncan [Sun, 5 Jan 2025 11:09:24 +0000 (03:09 -0800)]
Set local variable for UBO member to avoid slowly dereferencing it.

3 months agoUnroll blake compression rounds.
Chris Duncan [Sun, 5 Jan 2025 10:47:09 +0000 (02:47 -0800)]
Unroll blake compression rounds.

3 months agoPoW does not need to be secure, so just use basic fast PRNG.
Chris Duncan [Sun, 5 Jan 2025 10:46:51 +0000 (02:46 -0800)]
PoW does not need to be secure, so just use basic fast PRNG.

3 months agoRestart calculatino if nonce is not found, in order to accomodate smaller workgroup...
Chris Duncan [Sun, 5 Jan 2025 10:08:17 +0000 (02:08 -0800)]
Restart calculatino if nonce is not found, in order to accomodate smaller workgroup sizes. Suboptimal but can be improved later.

3 months agoSkip original pow tests for now. Reduce test suite size.
Chris Duncan [Sun, 5 Jan 2025 09:39:05 +0000 (01:39 -0800)]
Skip original pow tests for now. Reduce test suite size.

3 months agoFix copypasta typos in threshold check.
Chris Duncan [Sun, 5 Jan 2025 09:36:54 +0000 (01:36 -0800)]
Fix copypasta typos in threshold check.

3 months agoShortcut conditional by validating nonce prior to loading atomic. Remove redundant...
Chris Duncan [Sun, 5 Jan 2025 09:24:15 +0000 (01:24 -0800)]
Shortcut conditional by validating nonce prior to loading atomic. Remove redundant return statement.

3 months agoRevert nonce and found swap.
Chris Duncan [Sun, 5 Jan 2025 08:43:12 +0000 (00:43 -0800)]
Revert nonce and found swap.

3 months agoScrap in-shader loop since it is probably triggering browser watchdog timers as a...
Chris Duncan [Sun, 5 Jan 2025 08:00:31 +0000 (00:00 -0800)]
Scrap in-shader loop since it is probably triggering browser watchdog timers as a long-running process on lower-end hardware, just redispatch instead.

3 months agoRemove extraneous commenting. Move XOR to start of for loop. Whitespace.
Chris Duncan [Sun, 5 Jan 2025 07:10:13 +0000 (23:10 -0800)]
Remove extraneous commenting. Move XOR to start of for loop.  Whitespace.

3 months agoDecrease workgroup size and implement loop in shader main. Add some notes for potenti...
Chris Duncan [Sun, 5 Jan 2025 05:57:29 +0000 (21:57 -0800)]
Decrease workgroup size and implement loop in shader main. Add some notes for potential changes later.

3 months agoStress test block performance with PowGpu.
Chris Duncan [Sun, 5 Jan 2025 05:56:19 +0000 (21:56 -0800)]
Stress test block performance with PowGpu.

3 months agoSave some benchmarking notes.
Chris Duncan [Sun, 5 Jan 2025 05:55:19 +0000 (21:55 -0800)]
Save some benchmarking notes.

3 months agoDocument construction and purpose of thread ID.
Chris Duncan [Sun, 5 Jan 2025 05:48:17 +0000 (21:48 -0800)]
Document construction and purpose of thread ID.

3 months agoChange loop index variable name in G mixing function so it does not collide with...
Chris Duncan [Sat, 4 Jan 2025 23:20:03 +0000 (15:20 -0800)]
Change loop index variable name in G mixing function so it does not collide with other declarations elsewhere.

3 months agoPush new bundles for platform testing.
Chris Duncan [Sat, 4 Jan 2025 12:07:23 +0000 (04:07 -0800)]
Push new bundles for platform testing.

3 months agoRestore additional block performance tests now that PowGpu is working.
Chris Duncan [Sat, 4 Jan 2025 12:05:02 +0000 (04:05 -0800)]
Restore additional block performance tests now that PowGpu is working.

3 months agoAdd PowGpu performance tests outside of Block scope and Web Workers.
Chris Duncan [Sat, 4 Jan 2025 12:04:29 +0000 (04:04 -0800)]
Add PowGpu performance tests outside of Block scope and Web Workers.

3 months agoReset `found` flag between executions.
Chris Duncan [Sat, 4 Jan 2025 12:00:48 +0000 (04:00 -0800)]
Reset `found` flag between executions.

3 months agoExport PowGpu from main for users beyond Blocks. Small comment.
Chris Duncan [Sat, 4 Jan 2025 11:18:56 +0000 (03:18 -0800)]
Export PowGpu from main for users beyond Blocks. Small comment.

3 months agoConfigure UBO buffer during static initialization.
Chris Duncan [Sat, 4 Jan 2025 10:42:48 +0000 (02:42 -0800)]
Configure UBO buffer during static initialization.

3 months agoFix threshold offset in Javascript. Tweak commenting and remove logging.
Chris Duncan [Sat, 4 Jan 2025 09:47:41 +0000 (01:47 -0800)]
Fix threshold offset in Javascript. Tweak commenting and remove logging.

3 months agoPass in random data to initialize nonce.
Chris Duncan [Sat, 4 Jan 2025 09:22:26 +0000 (01:22 -0800)]
Pass in random data to initialize nonce.

3 months agoReduce block performance test for getting powgpu right.
Chris Duncan [Sat, 4 Jan 2025 09:17:00 +0000 (01:17 -0800)]
Reduce block performance test for getting powgpu right.

3 months agoRemove logging.
Chris Duncan [Sat, 4 Jan 2025 08:42:56 +0000 (00:42 -0800)]
Remove logging.

3 months agoMove atomic check to start of main. Add atomic check prior to setting nonce.
Chris Duncan [Sat, 4 Jan 2025 08:34:02 +0000 (00:34 -0800)]
Move atomic check to start of main. Add atomic check prior to setting nonce.

3 months agoTweak logging.
Chris Duncan [Sat, 4 Jan 2025 07:45:08 +0000 (23:45 -0800)]
Tweak logging.

3 months agoWhitespace.
Chris Duncan [Sat, 4 Jan 2025 07:37:22 +0000 (23:37 -0800)]
Whitespace.