-
sech1
-
sech1and the repo github.com/l1mey112/randomx.js
-
parazydsech1: re: randomx optimizations: Would it still be fine for example if we use the code with optimizations in both our miner and verification code?
-
sech1It wasn't verified as thoroughly as the reference repo, but chances are very good that it can be used for everything. But the difference in performance is not that big if MSR and huge pages are applied to both. Less than 10%
-
parazyd*nod*
-
DataHoarder^ implemented similar tricks they do on github.com/l1mey112/randomx.js/blob/master/src/jit/stubs/semifloat.c
-
DataHoarderand the purego/wasm interpreter that was using softfloat64 now runs quite faster
-
DataHoarderno JIT in that mode
-
DataHoarder-20% per/op
-
DataHoarderbut I also get rid of my own maintained softfloat64 (which was still faster in the case of soft float being needed than compiler soft float support)
-
DataHoardermaking it constant time gave -50% reduction total :)
-
sech1Tricks as in calculating the error of FP +-/* operations? Yes, that's a well known technique
-
DataHoarderyeah, to apply rounding
-
DataHoarderthe trick is applying it in constant time
-
DataHoardernot that bad compared to hardware rounding in interpreter mode paste.debian.net/1414001
-
DataHoarderofc as usual calculating both branches and merging them constant time is faster than doing branched code :)