Golang implementation of RandomX
Go to file
DataHoarder 8db94fb12b
All checks were successful
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
Version v1.0.0
2024-04-11 09:55:52 +02:00
fpu Optimize vm/superscalar, add generic fpu round as panic fallback 2024-04-11 09:40:11 +02:00
.drone.yml Working RandomX with minimal assembly for rounding mode (AMD64,ARM64) 2024-04-11 08:46:34 +02:00
aes_const.go Upload files to '' 2019-10-15 19:45:39 +02:00
aes_hash.go Remove superfluous logging 2022-10-24 20:17:59 +02:00
config.go Optimize vm/superscalar, add generic fpu round as panic fallback 2024-04-11 09:40:11 +02:00
go.mod Downgrade to require go 1.17 2024-04-11 09:40:23 +02:00
go.sum Downgrade to require go 1.17 2024-04-11 09:40:23 +02:00
LICENSE Working RandomX with minimal assembly for rounding mode (AMD64,ARM64) 2024-04-11 08:46:34 +02:00
randomx.go Update 'randomx.go' 2019-10-15 20:31:51 +02:00
randomx_test.go Working RandomX with minimal assembly for rounding mode (AMD64,ARM64) 2024-04-11 08:46:34 +02:00
README.md Version v1.0.0 2024-04-11 09:55:52 +02:00
superscalar.go Optimize vm/superscalar, add generic fpu round as panic fallback 2024-04-11 09:40:11 +02:00
vm.go Optimize vm/superscalar, add generic fpu round as panic fallback 2024-04-11 09:40:11 +02:00
vm_instruction.go Optimize vm/superscalar, add generic fpu round as panic fallback 2024-04-11 09:40:11 +02:00

RandomX (Golang Implementation)

Fork from git.dero.io/DERO_Foundation/RandomX. Also related, their Analysis of RandomX writeup.

Original code failed RandomX testcases and was implemented using big.Float.

This package implements RandomX without CGO, using only Golang code, pure float64 ops and two small assembly sections to implement CFROUND for amd64/arm64. Test cases pass properly.