So, what problems can a GPU-oriented mining algorithm encounter?
FPGA
is a reprogrammable logic circuit device. Its main difference from all other devices is the incredible software adaptability and flexibility. In memory hard algorithms FPGA can be configured to access memory 100x faster than a CPU for example.
Solution:
CN-GPU utilises FP32 math at single precision that's performance relies on
a physical core count and is not relying on memory performance.
Botnet / CPU mining
is a niche for various malware software and users hardware abuse. It's mining costs reach near zero values, harming markets of mining coins and getting away profits from GPU miners. Also CPU algorithms are suitable for VM and datacenter mining.
Solution:
CN-GPU utilises FP32 math that is too slow even on hi-end multi-core CPUs
to be taken into consideration.
ASIC devices
are mass produced special devices that achieve maximum energy efficiency ratios with lowest possible software flexibillity. One ASIC device can replace dozens, and sometimes hundreds of GPU-s on some algorithms.
Solution:
GPUs are designed for FP32 computing, so they can already be considered as an ASICs for CN-GPU.
Large corporations such as Google do a lot of floating point calculations, so if a FP32 ASIC was
developed they would pay much more than the entire crypto market is worth to replace their
deep-learning GPU farms.
Unequal outcomes
Some mining algorithms are better on AMD, some - on NVIDIA, some can't be used or are heavily crippled on lower-end GPU-s or GPU-s with small memory capacity due to algorithm memory restrictions. Some - heavily rely in performance on additional memory software tweaking.
Solution:
Performance in CN-GPU relies on GPU physical core count and its clock in Mhz. It does not rely
on memory performance, type and tweaks and works on GPUs with 2-3Gb of vRam.
Meet the concept of Fair GPU Mining
Cryptonight-GPU is the first in crypto industry mining algorithm that is designed to use floating point math at single precision (FP32) and was developed from scratch by Ryo Currency team. It is ASIC/Botnet/FPGA resistant algorithm that heavily relies on GPU core compute performance and puts memory performance, amount and type on a secondary place.
FP32 is a universal math that is defined by technical standard IEEE 754 and is being used for GPU computations and benchmarks for over a decades. FLops performance relies on chip physical core count and its operating frequency and voltage, making both AMD and Nvidia rather similar in performance among various lineups and making FPGA/ASIC/CPU devices economically useless.
FLops performance of a chip is a public information (check FP32 or "single precision"), and by using performance at single precision, you can roughly estimate hash rate in Cryptonight-GPU.
Implementing an algorithm based on floating point arithmetic gives miners with low or slow memory GPUs and powerful core possibility to not be penalised and participate in mining relatively to their real computational speed, not memory restrictions.
Projects that are using Cryptonight-GPU mining algorithm:
Ryo Currency (RYO) | Equilibria (XEQ) | Conceal Network (CCX) |
Frequently Asked Questions
-
Is there a whitepaper or technical explanation of this mining algorithm?
All source code for Cryptonight-GPU is available on Github. If you are a developer and can read the code, you can navigate there. Feel free also to ask Ryo developers if you have any questions left about the applied technology.
-
The heating is too high, is it possible to make this algo run more cool?
Being GPU core dependant means that this algorithm will be very sensitive to overclocking and increased core voltage. Since core is the biggest part of a device's TDP, the electric consumption and thus hashrate will heavily rely on your GPU's OC profile.
-
Do you have a DAG file or any other memory requirement?
There is no DAG file (a file that is generated every mining epoch that increases from epoch to epoch) or other memory size requirements. There is no need for memory tweaking (flashing) or overclocking memory.
-
Do you plan to improve the POW?
Yes, the dev team plans to further improve this mining algorithm in future. Though initial version has proven to be good in many senses, there is still a room for improvement.
-
Is the code licensed? How can it be used and does anybody uses it?
The GPU code is licensed under the GPLv3, and the CPU code under the BSD license. It is currently being used by Ryo Currency (fork date: Feb. 14. 2019), Equilibria (fork date: Nov. 17. 2019) and Conceal Network (fork date: Nov. 23. 2020).