]>
zoso.dev Git - nano-pow.git/log
Chris Duncan [Thu, 16 Jan 2025 05:20:24 +0000 (21:20 -0800)]
Swizzle on other bit shift not working but leaving here commented to work on later.
Chris Duncan [Thu, 16 Jan 2025 05:11:06 +0000 (21:11 -0800)]
This is just one example of reversing bits with a swizzle instead of using a constructor.
Chris Duncan [Thu, 16 Jan 2025 05:02:19 +0000 (21:02 -0800)]
Fix rate reporting. Add benchmarks.
Chris Duncan [Thu, 16 Jan 2025 04:57:36 +0000 (20:57 -0800)]
Replace selects with simple carry arithmetic since select is still technically a branch.
Chris Duncan [Thu, 16 Jan 2025 03:30:15 +0000 (19:30 -0800)]
Convert blockhash u32 scalars to vec2 vectors.
Chris Duncan [Thu, 16 Jan 2025 03:18:55 +0000 (19:18 -0800)]
Remove false positive from benchmarks since it is now in test page.
Chris Duncan [Thu, 16 Jan 2025 03:18:13 +0000 (19:18 -0800)]
Add edge cases to validate check on testing web page. Add manual validation form.
Chris Duncan [Thu, 16 Jan 2025 03:14:48 +0000 (19:14 -0800)]
Split main into separate entry points to fix false positives from validate.
Chris Duncan [Thu, 16 Jan 2025 03:13:09 +0000 (19:13 -0800)]
Fix validation in gl implementation which could return false positives.
Chris Duncan [Wed, 15 Jan 2025 22:41:12 +0000 (14:41 -0800)]
Add data to error message.
Chris Duncan [Wed, 15 Jan 2025 22:12:36 +0000 (14:12 -0800)]
Save another couple benchmarks but also note an issue with validate.
Chris Duncan [Wed, 15 Jan 2025 21:17:30 +0000 (13:17 -0800)]
Fix bug with GL validate.
Chris Duncan [Wed, 15 Jan 2025 20:10:46 +0000 (12:10 -0800)]
Yeah, lucky pass. Log a couple more benchmarks. Set min/max on Effort of test page.
Chris Duncan [Wed, 15 Jan 2025 18:08:26 +0000 (10:08 -0800)]
Might be just a lucky pass, but this is the best benchmark so far with the current implementation.
Chris Duncan [Wed, 15 Jan 2025 18:08:03 +0000 (10:08 -0800)]
Revert to workgroup size 64. Create NanoPowOptions type to expand available parameters for executing searches and validation. Add a logging feature to gpu class. Expand options available on test page.
Chris Duncan [Wed, 15 Jan 2025 18:00:47 +0000 (10:00 -0800)]
Benchmarking.
Chris Duncan [Wed, 15 Jan 2025 17:56:56 +0000 (09:56 -0800)]
Update documentation comments.
Chris Duncan [Tue, 14 Jan 2025 22:44:32 +0000 (14:44 -0800)]
Replace m[0-1] with nonce vector.
Chris Duncan [Tue, 14 Jan 2025 22:36:23 +0000 (14:36 -0800)]
Rename `v` vectors to align with reference implementation.
Chris Duncan [Tue, 14 Jan 2025 22:11:34 +0000 (14:11 -0800)]
Benchmarks.
Chris Duncan [Tue, 14 Jan 2025 21:59:51 +0000 (13:59 -0800)]
Whitespace.
Chris Duncan [Tue, 14 Jan 2025 21:58:57 +0000 (13:58 -0800)]
Clean up whitespace.
Chris Duncan [Tue, 14 Jan 2025 21:49:58 +0000 (13:49 -0800)]
Remove last instances of original v scalar variables.
Chris Duncan [Tue, 14 Jan 2025 21:47:23 +0000 (13:47 -0800)]
Replace remaining 32-bit rotations.
Chris Duncan [Tue, 14 Jan 2025 21:43:35 +0000 (13:43 -0800)]
Replace another 32-bit rotation.
Chris Duncan [Tue, 14 Jan 2025 21:41:45 +0000 (13:41 -0800)]
The 32-bit rotate was not correctly or completely implemented like the other rotations due to getting fooled by the simplicity. Start fixing starting with v[24-25].
Chris Duncan [Tue, 14 Jan 2025 21:33:56 +0000 (13:33 -0800)]
Clean up whitespace in round 0 to get a better idea of why other scalars are in use.
Chris Duncan [Tue, 14 Jan 2025 21:28:27 +0000 (13:28 -0800)]
Remove unused v20-23 scalars.
Chris Duncan [Tue, 14 Jan 2025 21:27:27 +0000 (13:27 -0800)]
Remove last usage of v5-7 scalars.
Chris Duncan [Tue, 14 Jan 2025 21:26:34 +0000 (13:26 -0800)]
Remove last usage of v4 scalar.
Chris Duncan [Tue, 14 Jan 2025 21:26:09 +0000 (13:26 -0800)]
Remove last usage of v3 scalar.
Chris Duncan [Tue, 14 Jan 2025 21:25:33 +0000 (13:25 -0800)]
Remove last usage of v2 scalar.
Chris Duncan [Tue, 14 Jan 2025 21:21:13 +0000 (13:21 -0800)]
Delete unused o0 and o1 scalar variables.
Chris Duncan [Tue, 14 Jan 2025 21:20:37 +0000 (13:20 -0800)]
Replace remaining m scalar operations.
Chris Duncan [Tue, 14 Jan 2025 21:17:09 +0000 (13:17 -0800)]
Replace more m scalar operations.
Chris Duncan [Tue, 14 Jan 2025 21:14:27 +0000 (13:14 -0800)]
Replace more m scalar operations.
Chris Duncan [Tue, 14 Jan 2025 21:03:10 +0000 (13:03 -0800)]
Start replacing m scalar operations.
Chris Duncan [Tue, 14 Jan 2025 20:51:35 +0000 (12:51 -0800)]
Remove last usage of v1 scalar.
Chris Duncan [Tue, 14 Jan 2025 20:45:15 +0000 (12:45 -0800)]
Remove unnecessary v[20-23] scalar assignments.
Chris Duncan [Tue, 14 Jan 2025 20:44:34 +0000 (12:44 -0800)]
Remove unnecessary v[12-19] scalar assignments.
Chris Duncan [Tue, 14 Jan 2025 20:43:58 +0000 (12:43 -0800)]
Remove unnecessary v[8-11] scalar assignments.
Chris Duncan [Tue, 14 Jan 2025 20:18:07 +0000 (12:18 -0800)]
Remove unnecessary v[8-9] scalars.
Chris Duncan [Tue, 14 Jan 2025 20:14:09 +0000 (12:14 -0800)]
Remove unnecessary v[20-23] scalars.
Chris Duncan [Tue, 14 Jan 2025 20:11:58 +0000 (12:11 -0800)]
Remove unnecessary v[12-19] scalars.
Chris Duncan [Tue, 14 Jan 2025 20:10:48 +0000 (12:10 -0800)]
Remove unnecessary v[10-11] scalars.
Chris Duncan [Tue, 14 Jan 2025 20:07:31 +0000 (12:07 -0800)]
Remove unnecessary v0 scalar.
Chris Duncan [Tue, 14 Jan 2025 20:05:02 +0000 (12:05 -0800)]
Replace remaining scalar of threshold comaparison with vector variable.
Chris Duncan [Tue, 14 Jan 2025 20:03:43 +0000 (12:03 -0800)]
Remove extraneous comments since operations are getting deprecated with implementation of vector math.
Chris Duncan [Tue, 14 Jan 2025 20:00:18 +0000 (12:00 -0800)]
Remove deprecated xor0 and xor1 variables.
Chris Duncan [Tue, 14 Jan 2025 19:59:34 +0000 (11:59 -0800)]
Replace rest of 63-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 19:52:50 +0000 (11:52 -0800)]
Replace some 63-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 19:40:47 +0000 (11:40 -0800)]
Replace rest of 16-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 19:34:21 +0000 (11:34 -0800)]
Replace some 16-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 19:31:22 +0000 (11:31 -0800)]
Replace more 24-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 19:30:29 +0000 (11:30 -0800)]
Replace more 24-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 19:29:22 +0000 (11:29 -0800)]
Replace more 24-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 19:28:01 +0000 (11:28 -0800)]
Replace more 24-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 19:26:53 +0000 (11:26 -0800)]
Replace more 24-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 19:25:37 +0000 (11:25 -0800)]
Replace more 24-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 19:24:20 +0000 (11:24 -0800)]
Replace more 24-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 19:22:50 +0000 (11:22 -0800)]
Replace more 24-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 19:20:39 +0000 (11:20 -0800)]
Replace some 24-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 19:20:20 +0000 (11:20 -0800)]
Add vector variable for storing XOR results during rotations.
Chris Duncan [Tue, 14 Jan 2025 18:49:23 +0000 (10:49 -0800)]
Replace more 32-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 18:47:56 +0000 (10:47 -0800)]
Replace more 32-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 18:46:26 +0000 (10:46 -0800)]
Replace more 32-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 18:45:08 +0000 (10:45 -0800)]
Replace more 32-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 18:42:22 +0000 (10:42 -0800)]
Replace more 32-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 18:31:48 +0000 (10:31 -0800)]
Replace more 32-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 17:55:48 +0000 (09:55 -0800)]
Fix rotation assignments for interim values while converting scalar to vector.
Chris Duncan [Tue, 14 Jan 2025 17:50:15 +0000 (09:50 -0800)]
Replace some 32-bit scalar rotations with vector rotations.
Chris Duncan [Tue, 14 Jan 2025 17:42:54 +0000 (09:42 -0800)]
Replace scalar in threshold check with vector component.
Chris Duncan [Tue, 14 Jan 2025 17:41:45 +0000 (09:41 -0800)]
Remove unneeded v_01 vector assignments.
Chris Duncan [Tue, 14 Jan 2025 17:39:16 +0000 (09:39 -0800)]
Replace scalar addition involving v[0-1] and m with vector addition.
Chris Duncan [Tue, 14 Jan 2025 16:47:55 +0000 (08:47 -0800)]
Add calculation rate to benchmarks.
Chris Duncan [Tue, 14 Jan 2025 16:36:29 +0000 (08:36 -0800)]
Replace more scalar addition with vector addition.
Chris Duncan [Tue, 14 Jan 2025 16:33:13 +0000 (08:33 -0800)]
Replace more scalar addition with vector addition.
Chris Duncan [Tue, 14 Jan 2025 16:31:19 +0000 (08:31 -0800)]
Replace more scalar addition with vector addition.
Chris Duncan [Tue, 14 Jan 2025 16:28:14 +0000 (08:28 -0800)]
Replace more scalar addition with vector addition.
Chris Duncan [Tue, 14 Jan 2025 16:26:17 +0000 (08:26 -0800)]
Repalce more scalar addition with vector addition.
Chris Duncan [Tue, 14 Jan 2025 16:24:37 +0000 (08:24 -0800)]
Replace more scalar addition with vector addition.
Chris Duncan [Tue, 14 Jan 2025 16:21:51 +0000 (08:21 -0800)]
Replace more scalar addition with vector addition.
Chris Duncan [Tue, 14 Jan 2025 16:19:59 +0000 (08:19 -0800)]
Replace more scalar addition with vector addition.
Chris Duncan [Tue, 14 Jan 2025 16:16:14 +0000 (08:16 -0800)]
Replace more scalar addition with vector addition.
Chris Duncan [Tue, 14 Jan 2025 16:13:34 +0000 (08:13 -0800)]
Replace more scalar addition with vector addition.
Chris Duncan [Tue, 14 Jan 2025 15:21:17 +0000 (07:21 -0800)]
Cancel test if validate is not working.
Chris Duncan [Tue, 14 Jan 2025 15:08:19 +0000 (07:08 -0800)]
Replace more scalar addition with vector addition.
Chris Duncan [Tue, 14 Jan 2025 14:54:11 +0000 (06:54 -0800)]
Replace more scalar addition with vector addition. Interestingly, found that commenting out ` v24 = v_2425.x;` or `v25 = v_2425.y;` still results in a correct nonce. This presents an opportunity to prune even more instructions, so this will be pursued in a separate branch.
Chris Duncan [Tue, 14 Jan 2025 06:11:49 +0000 (22:11 -0800)]
Add remaining compression buffer values as vectors.
Chris Duncan [Tue, 14 Jan 2025 06:04:36 +0000 (22:04 -0800)]
Stage final fully reduced u64 addition operation using vectors. This will be the technique going forward; the assignments to individual scalars after the vector sum are purely placeholders until the entire algorithm can be converted.
Chris Duncan [Mon, 13 Jan 2025 22:32:47 +0000 (14:32 -0800)]
Optimize 64-bit addition. More to come since this is producing valid results.
Chris Duncan [Mon, 13 Jan 2025 21:38:51 +0000 (13:38 -0800)]
Patch version.
Chris Duncan [Mon, 13 Jan 2025 20:58:52 +0000 (12:58 -0800)]
Import NanoPow dynamically, preferring local source. Allow user to set test count. Remove testing alternate libs and only test best one loaded. Add benchmarks.
Chris Duncan [Mon, 13 Jan 2025 19:56:09 +0000 (11:56 -0800)]
Increase dispatch to 1024x1024 to optimize balance between dispatch size and overhead since this is about the smallest size where it hits a nonce on the first pass the majority of the time.
Chris Duncan [Mon, 13 Jan 2025 17:53:37 +0000 (09:53 -0800)]
Fix combined reference to NanoPow either locally or remotely.
Chris Duncan [Mon, 13 Jan 2025 16:35:55 +0000 (08:35 -0800)]
Use @latest version of packages in test page.
Chris Duncan [Mon, 13 Jan 2025 15:40:35 +0000 (07:40 -0800)]
Patch version.
Chris Duncan [Mon, 13 Jan 2025 15:38:43 +0000 (07:38 -0800)]
Reorganize typings.
Chris Duncan [Mon, 13 Jan 2025 15:35:34 +0000 (07:35 -0800)]
Refactor pipeline to use tsc to generate definition files only and manually manage the global types.
Chris Duncan [Mon, 13 Jan 2025 14:52:16 +0000 (06:52 -0800)]
Scrap imports since it is messing up definition files.