GPU-accelerated vanity address generator for multiple blockchains
cargo run --release -- solana-vanity aaa ""
cargo run --release -- ethereum-vanity 555555 ""
cargo run --release -- bitcoin-vanity bc1qqqqq ""
cargo run --release -- shallenge brandonros 000000000000cbaec87e070a04c2eb90644e16f37aab655ccdf683fdda5a6f96
- compile
no_std
Rustlogic
+kernels
libraries (specifically 1.86.0 because it was built against LLVM 19) targetingriscv64gc-unknown-none-elf
due to its simplicity in instruction set - make it emit LLVM IR instead of an actual binary
- Adapt the RISC-V LLVM IR to NVPTX64 LLVM IR
- assemble the NVPTX64 LLVM IR to NVPTX64 LLVM bitcode
- feed the NVPTX64 LLVM bitcode to new CUDA toolkit 12.9
libNVVM
which adds support for LLVM19 for Blackwell (previous architectures only support LLVM v7 which is very old) to get Nvidia's PTX (Parallel Thread Execution) - feed the PTX to
ptxas
to get CUBIN SaSS (Streaming ASSembler) - run the CUBIN on device with
gpu_runner