A new stable release is out: rieMiner 0.92. Updates:
- The main update is the implementation of all the required changes to support Riecoin 0.20 (support for 0.16 and earlier is dropped);
- Minor tweaks decreasing slightly the memory usage and improving a bit the performance (a few % in some cases);
- The Benchmark Mode was divided in two modes, Benchmark and Search. The former is now using (mostly) deterministic jobs in order to provide more reproducible results, and it can also simulate blocks to provide more realistic benchmarks. Search is the mode to use for world record attempts;
- A Test Mode was also added to help testing by simulating various network conditions like disconnects;
- One of the Riecoin fork changes is the use of fractional difficulties. It is also possible to enter fractional difficulties for Benchmark and Test Modes;
- Bech32 addresses are now required, and support for them was improved;
- The candidates per second (c/s) metric is now used instead of the primes per second (pps). To get the pps, just divide the c/s by the ratio r;
- Minor interface changes like showing the current clock rather than the time elapsed since start for mining;
- It is again possible to mine with only 1 Thread;
- It is now possible to save the Prime Table and start mining quickly for large PTLs (useful if restarting often or doing a lot of benchmarks):
- A lot of settings are now guessed automatically;
- Major code refactoring. A guide explaining the mining algorithm was also written, and the Miner.cpp file was notably refactored to match the guide;
- Given the interest in mining with Raspberry Pis, the Light Branch was also upgraded to 0.92.
A new stable release is out: rieMiner 0.91. It brings a few enhancements, but no performance increase. A miner could as well continue using 0.9 without much issues. Updates:
- For Solo Mining, Bech32 addresses are now supported (only P2PWKH for now though, P2WSH support may eventually come later);
- Some minor interface changes, in particular a better estimation of the time to find a block, and there is now a proper and very precise earning estimation in Pooled Mining in RIC/day!
- There was a bug which broke the statistics in Pooled Mining when the Difficulty changed, this is now fixed;
- When mining using a Primorial Number bigger than 40, the base primes shown are now correct. This is important for people trying to beat records with the Benchmark Mode;
- The memory estimation is more precise.
32 bits is no longer supported. Use the 0.9 binaries or the outdated Light branch to find out how to adapt the code to make a 32 bits version of rieMiner, if you want to play with a RaspBerry Pi or vintage computers.
The PDF manual is also no longer provided as the README should be enough, even if it is not very summarized. If you need help, don't hesitate to reach the community in BitcoinTalk, Discord or Reddit!
If you compare Solo and Pooled Mining performance, you will find out that Pooled Mining is around 10% slower than Solo Mining. It was actually always the case, due to the condition of what makes a submission a share (first number prime and at least 4 primes in total). Thus, the issue is not at the miner's end, but the pools' one, and there is no way to fix this unless pools change the conditions of what a share is. In Discord, I gave a detailed explanation of the problem.
rieMiner 0.9 is finally out :D !
Standalone Windows binaries provided (also for Linux, compiled on Debian 9; not totally static but should work on Debian or Ubuntu fresh installs). Also, a PDF manual. L versions are without assembly and precomputed data optimizations, but in 99% of the cases, you should use the Win64/Deb64 versions.
Updates from fastrie, the previous reference Riecoin miner:
- Adds solo mining with a Riecoin Core wallet using the GetBlockTemplate protocol. Supports custom payout addresses (P2PKH and P2SH);
- Adds a Benchmark Mode to allow much easier performance comparisons;
- Some bug fixes like the long delay before Stratum mining starts or some random segmentation faults;
- One important bug fix is the CPU Underuse: when running with 16 threads or more with fastrie, the CPU usage would not be maxed out at current difficulties. It could be worked around by launching multiple instances with each less threads, (not practical at all and wastes a lot of memory), or reducing the Prime Table Limit (significantly lower 6-tuples find rate). Note that the issue is actually still present (notably in Testnet), but negligible in practice;
- Performance enhancements (threading improvements, assembly optimizations, precomputed data usage). From fastrie, you will get a gain of around 5-10% for the same settings and computer. You can thank Michael Bell for all his contributions;
- The assembly optimizations include usage of SSE, and AVX, AVX2 or AVX512 when available. AVX512 support is experimental and not much tested, but a huge performance increase of ~20% over AVX2 has been reported! As a trade off, the CPU needs to be x64 with SSE to be able to run rieMiner. However, a "Light" branch is provided in order to support older CPUs and other architectures (you can for example mine Testnet blocks with a Pentium II computer or a RaspBerry Pi);
- Now supports prime table limits (PTL, also called "Sieve Max") higher than 2^32, to get even better speeds by reducing the ratios between k and (k + 1)-tuples. Indeed, using a PTL of 2^33 instead of 2^31 (which is not possible on fastrie) for benchmarking with Difficulty 1600 increased the blocks/day metric a lot (about 25%)! However, in order to set such a high PTL, you would need at least 24 GB of RAM;
- Support of prime constellations types other than the Riecoin one (rieMiner can be configured to find 7 or 8-tuples, for example);
- Use of configuration files instead of command line options, much more parameters to customize;
- Complete source code refactoring for a much more modern and developer friendly code;
- Cleaner user interface, more interesting statistics.
For comparing performance with fastrie, you can use the rieMiner's Benchmark Mode and my fastrie fork (benchmark branch). Note that you need to test long enough to get precise numbers.
Examples of results (in primes per second, Standard Benchmark): 221.0 pps -> 233.4 pps for a 2700X @ 4 GHz, and 81.3 pps -> 89.3 pps for a 6700K @ 3 GHz (respectively 5.6% and 9.8% increases).
For the 2700X, the fastrie benchmarking had to be done with 2 instances of 8 threads each. Else, it would suffer a lot from the CPU Underuse Bug.
Happy Mining :D !
- Assembly optimizations from Michael Bell (Rockhawk). Performance increase is variable depending on your computer and the rieMiner configuration and hard to measure, but should be at least ~5% and can be much more. Note that this version also uses more memory;
- Partial CPU Underuse Bug fix, also from Rockhawk: this problem is significantly less important, but still present;
- Now possible to use custom configuration file paths;
- Now possible to save tuples counts by difficulty for statistical purposes;
- Some aesthetic changes like showing 1 to 3-tuples/s metrics instead of 2 to 4;
- Includes support of other constellations types to be ready in case of a POW change in the future, or just to be able to find different prime constellations;
- Some other minor changes.
Thank you again Rockhawk for your contributions! New developers are welcome!
Drops GetWork support for solo mining, adds an assistant to configure rieMiner without a rieMiner.conf.
Binary for Windows 64 bits included. Should work on Windows 7+ with Core 2 Duo or more recent.
Starting from his point, the code should be much more stable than before thanks to the huge refactoring.
The miner should now be stable enough to replace the older fastrie/xptMiner without problem.
I am waiting the official Riecoin Wallet update and letting some time to find and fix remaining bugs and do some minor refactoring before releasing the stable rieMiner 0.9. At this moment, official standalone binaries for Windows and probably Linux will be provided.