Difference between revisions of "Porting/RandomX"

From RCS Wiki
Jump to navigation Jump to search
(Add RandomX)
 
(Add note on NX-AES)
 
(One intermediate revision by the same user not shown)
Line 6: Line 6:
  
 
* [https://github.com/tevador/RandomX/issues/132 POWER support]
 
* [https://github.com/tevador/RandomX/issues/132 POWER support]
 +
 +
== Comparison to CryptoNight ==
 +
 +
In [https://github.com/madscientist159/xmrig/#power-performance-discussion XMRig POWER Performance Discussion] , [[User:TimothyPearson|TimothyPearson]] says that CryptoNight v8 damaged POWER's competitiveness against x86 by emphasizing integer square root and integer division.  Based on looking at [https://github.com/tevador/RandomX/blob/master/doc/design.md#24-integer-operations RandomX Integer Operations] , [[User:JeremyRand|JeremyRand]]'s impression is that neither of those operations is performance-critical in RandomX (which replaced CryptoNight v8 in Monero in the hardfork of Nov 30, 2019).
 +
So POWER is likely to be competitive against x86 for Monero mining again once the RandomX JIT is ported to POWER.
 +
 +
== AES Acceleration ==
 +
 +
Unfortunately, RandomX cannot use POWER9's NX-AES accelerator, because [https://www.kernel.org/doc/html/latest/powerpc/vas-api.html#introduction NX-AES is not currently exposed to userspace in Linux].
  
 
[[Category:Ports]]
 
[[Category:Ports]]

Latest revision as of 22:07, 2 February 2021

Finished

In progress

Comparison to CryptoNight

In XMRig POWER Performance Discussion , TimothyPearson says that CryptoNight v8 damaged POWER's competitiveness against x86 by emphasizing integer square root and integer division. Based on looking at RandomX Integer Operations , JeremyRand's impression is that neither of those operations is performance-critical in RandomX (which replaced CryptoNight v8 in Monero in the hardfork of Nov 30, 2019). So POWER is likely to be competitive against x86 for Monero mining again once the RandomX JIT is ported to POWER.

AES Acceleration

Unfortunately, RandomX cannot use POWER9's NX-AES accelerator, because NX-AES is not currently exposed to userspace in Linux.