Add secp256k1 AVX2/AVX-512 field multiplication proof of concept #32
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
secp256k1 AVX2/AVX-512 Proof of Concept
This PR explored using AVX2 SIMD instructions to accelerate secp256k1 field multiplication for EOA address mining.
Benchmark Results
Field Multiplication (GitHub Actions - AMD EPYC 7763)
Point Addition (Local - Apple Silicon via Rosetta)
Key Findings
AVX2 field multiplication shows excellent speedup (3.66x on AMD EPYC)
AVX2 point addition is slower than scalar in this PoC due to:
AVX-512 IFMA not available on GitHub Actions runners (AMD EPYC doesn't have it)
Technical Approach
vpmuludqcompatibilityFiles Created
Conclusion
While AVX2 shows promising speedup for individual field operations, achieving end-to-end speedup for point operations requires:
For EOA mining, CUDA/GPU implementation is likely more practical since GPUs can run thousands of parallel point operations vs 4-8 with SIMD.
This PR is closed as an exploratory PoC. The code remains in the branch for reference.