mikaelh



Offline



Activity: 301

Merit: 250







Sr. MemberActivity: 301Merit: 250 [XPM] [ANN] Primecoin High Performance | HP14 released! July 13, 2013, 10:36:06 PM

Last edit: December 02, 2014, 11:05:37 AM by mikaelh #1



Notice: CPU mining is no longer profitable. If you have a recent AMD GPU, you can try the following miners:

(with updates by eXtremal)

Claymore XPM (PrimeCoin) GPU Miner



Features:

* Extended sieve algorithm

* Cache-friendly segmented sieve

* Adjustable sieve parameters

* Mining threads use GMP for faster bignum arithmetic



Recent changes:

Changes in -hp14 (

* Huge CPU mining speedup. Up to 73% higher chains/day on Intel's Haswell.

* Developer fee is now 1% (-donationpercentage defaults to 1.0).

* Sieve now uses the BTS instruction (same as RapidPrime miner).

* Added compile-time support for using BMI2 instructions on Haswell.

* Added compile-time support for SSE2 and AVX2 bitwise operations.

* New extended sieve algorithm similar to rdebourbon's beta4 code.

* New default values for the tuning parameters:

. sievefilterprimes defaults to 14000 (up from 7849)

. sievesize defaults to 1376256 (up from 917504)

. sieveextensions defaults to 10 (up from 9)

* Lots of other minor improvements.



Changes in -hp13 (

* Binaries compiled with OpenSSL 1.0.1g which addresses the Heartbleed vulnerability

* Faster blockchain download



Changes in -hp12 (

* IMPORTANT: Fix for multiple machines doing the same work if wallet is shared.

* New chain statistics in debug.log.

* Removed 'primespersec' from the output of getmininginfo.

* Removed 'chainspermin' metric.

* Replaced -sievepercentage parameter with -sievefilterprimes.

* New parameter -l1cachesize for specifying the size of sieve segments.

* Added new blocks/day metric which tries to estimate how many blocks will be found at current difficulty.

* Better automatic adjustment of primorial factor.

* New parameter -primorial for manual adjustment of primorial.

* Implemented early support for v0.2 proposal (needs to be enabled with -miningprotocol=2).

* David's fix for getwork.

* Updated to Bitcoin v0.8.6 codebase.

* Improved the checking of BiTwin chain candidates. As a consequence, short BiTwin chains (1 or 2 primes) are now counted correctly in the mining statistics. Primes/h is now much higher due to this.

* The Qt application is now titled Primecoin High Performance.

* Fixes for Mac OS X and the Clang compiler.

* Revised default sieve parameters.

* Added an automatic donation feature when a new block is found. The -donationpercentage allows a percentage of the block reward to be donated to an address. E.g. passing the command-line parameter -donationpercentage=1.5 will donate 1.5% of every block to the developer. Alternatively, this value can be set in primecoin.conf. Also, the default address can be changed using -donationaddress.



Changes in -hp11: (

* Fixed a bug in the BiTwin filter that was inflating the chains/day estimate and reducing the chances of finding a block (thanks to rdebourbon).

* Slightly improved the accuracy of the prime probability estimate with regards to the 'sieveextensions' parameter.

* Changed the default value of 'sieveextensions' to 9.

* Other small fixes and improvements from cabin.



Changes in -hp10: (

* Major rewrite of the sieve to support extending the sieve (originally implemented by jh000).

* Added a new parameter 'sieveextensions' which controls how many times the sieve is extended.

* Removed the problematic and unnecessary fast-division test.

* Changed the value of nL1CacheElements to 224000 which is slightly faster (thanks to nushor on IRC).

* The 'roundsievepercentage' parameter is gone. The round primorial is now automatically adjusted.

* New RPC command 'listtopprimes' by Sunny.



Windows x64 binaries

http://sourceforge.net/projects/primecoin-hp/files/0.1.2-hp14/primecoin-0.1.2-hp14-winx64.zip/download

http://download.muuttuja.org/primecoin/primecoin-hp/0.1.2_hp14/primecoin-0.1.2-hp14-winx64.zip

SHA1SUM: 2610f99d0087bc799050fcbe02482e556df19ae1



Windows x86 binaries

http://sourceforge.net/projects/primecoin-hp/files/0.1.2-hp14/primecoin-0.1.2-hp14-winx86.zip/download

http://download.muuttuja.org/primecoin/primecoin-hp/0.1.2_hp14/primecoin-0.1.2-hp14-winx86.zip

SHA1SUM: d205da20b41d9eebe9c415144efe13a7efa652b5



Linux x64 and x86 binaries

http://sourceforge.net/projects/primecoin-hp/files/0.1.2-hp14/primecoin-0.1.2-hp14-linux.tar.bz2/download

http://download.muuttuja.org/primecoin/primecoin-hp/0.1.2_hp14/primecoin-0.1.2-hp14-linux.tar.bz2

SHA1SUM: 254087afc81dc054f48e7b1db1957c6cd2dabea6



Mac OS X binaries

http://sourceforge.net/projects/primecoin-hp/files/0.1.2-hp14/Primecoin-HP-Qt-0.1.2-hp14.dmg/download

http://download.muuttuja.org/primecoin/primecoin-hp/0.1.2_hp14/Primecoin-HP-Qt-0.1.2-hp14.dmg

SHA1SUM: 240af66fbf07d3a0b85c386a62faefe8d6afc592



Warning to Linux users: My binaries are linked against Berkeley DB 4.8.30. If you have compiled from source before, the database format may be incompatible if you linked against a different version of Berkeley DB. Sunny King's original binaries are linked against Berkeley DB 4.8.24, which should be compatible with my version. Always make sure to backup the database and your wallet before switching builds.



Source code (.tar.bz2)

http://sourceforge.net/projects/primecoin-hp/files/0.1.2-hp14/primecoin-0.1.2-hp14.tar.bz2/download

http://download.muuttuja.org/primecoin/primecoin-hp/0.1.2_hp14/primecoin-0.1.2-hp14.tar.bz2

SHA1SUM: ea772deda9d3a1d3ced99ba5858ec888d869667c



Source code (Git)

https://bitbucket.org/mikaelh/primecoin-hp

https://github.com/mikaelh2/primecoin



Please use the SourceForge link for downloading the source code to ease the load on the repository.



Older releases are stored on SourceForge:

https://sourceforge.net/projects/primecoin-hp/files/



Tutorials



[Tutorial] Primecoin Getting Started and Basic Commands

**Quick Guide!** - How to mine Primecoin

[XPM] Primecoin High Performance Linux Compilation Guide



Configuration



Sample config file for automatic mining:

Code: # Enable JSON-RPC commands to be received

server=1



# Username and password for JSON-RPC

rpcuser=primecoinrpc

rpcpassword=PASSWORD



# IP restriction for JSON-RPC

rpcallowip=127.0.0.1



# Start mining automatically

gen=1



# An extra seednode to help getting connected to the network

seednode=primeseed.muuttuja.org



# Tuning parameters

#sievesize=1376256

#sievefilterprimes=14000

#sieveextensions=10



# Donate 1% of found blocks by uncommenting the following line

#donationpercentage=1.0



Save the file as primecoin.conf in %APPDATA%\Primecoin (for Windows users), $HOME/.primecoin (for Linux users), or $HOME/Library/Application Support/Primecoin (for Mac OS X users).



FAQ



Q: How many blocks should I expect to find?

A: My current formula for turning chains/day into blocks/day is as follows:

blocks/day = chains/day * (0.97 * (1 - fracDiff) + 0.03)

Here fracDiff is the fractional part of the mining difficulty (i.e. fracDiff = diff - floor(diff)). The 'getmininginfo' command will show both the chains/day value and the difficulty.



Q: Is this compatible with the original client? Can I replace primecoin-qt/primecoind with this release?

A: Yes, the Windows builds should be compatible with the original client. It uses Berkeley DB version 4.8 so the database format should be the same.



Q: Why is the client crashing with the following message?

Assertion failed!

File: src/checkqueue.h, line 171

Expression: pqueue->nTotal == pqueue-> nIdle

A: This is a known bug which is present both in this version and the original Primecoin wallet. A workaround is to use a script or a cron job to automatically restart the wallet.



Q: How can I fix the client crashing on every startup?

A: Try deleting all database files except wallet.dat.



Q: Where is the config file located?

A: Windows users: The configuration file should be located in the %APPDATA%\Primecoin folder.

Linux users: The configuration file is located in your $HOME/.primecoin folder.

Mac OS X users: The configuration file is located in your $HOME/Library/Application Support/Primecoin folder.

The configuration file is not created by default. If it does not exist, simply create a new text file and save it as primecoin.conf.



Q: What are the optimal sieve parameters?

A: The default values should be good for most people. If you want to further optimize them, adjust them one-by-one and compare chains/day.



Q: Why is my performance worse on Linux?

A: This version relies on libgmp to do most of the complex calculations. Make sure your libgmp is up-to-date. Old versions do not support newer CPUs. I suggest compiling your own libgmp from latest source code for maximum performance.



Q: Why has my prime rate dropped after updating?

A: There are two common cases why primes/s can drop:

1. You downloaded the 32-bit version which is slower. Use the 64-bit version if possible.

2. Network difficulty has changed. Prime rate goes down when the integer part of the difficulty changes (i.e. going from 8.xx to 9.xx). It's a feature of the mining algorithm and nothing can be done about it.

Otherwise please make a post wiith system information (especially CPU model), operating system version and miner version.



Q: What is the chains/day estimate?

A: Short version:

Longer version:



Q: How do I solve a problem with the client not being able to synchronize or connect to any nodes?

A: Try adding this line to your primecoin.conf file:

Code: seednode=primeseed.muuttuja.org

Also check that your firewall allows outgoing connections to other nodes. You may also allow incoming connections if you want. The default port used by Primecoin is 9911 (TCP). This is Primecoin High Performance, a Primecoin wallet with high-performance CPU miner built-in. Only solo mining is supported. For pooled mining, see beeeeer.org . The main Primecoin thread is here CPU mining is no longer profitable. If you have a recent AMD GPU, you can try the following miners: Open Source XPM Pool + GPU Miner (aka. madPrimeMiner) (with updates by eXtremal)* Extended sieve algorithm* Cache-friendly segmented sieve* Adjustable sieve parameters* Mining threads use GMP for faster bignum arithmeticChanges in -hp14 ( ann ):* Huge CPU mining speedup. Up to 73% higher chains/day on Intel's Haswell.* Developer fee is now 1% (-donationpercentage defaults to 1.0).* Sieve now uses the BTS instruction (same as RapidPrime miner).* Added compile-time support for using BMI2 instructions on Haswell.* Added compile-time support for SSE2 and AVX2 bitwise operations.* New extended sieve algorithm similar to rdebourbon's beta4 code.* New default values for the tuning parameters:. sievefilterprimes defaults to 14000 (up from 7849). sievesize defaults to 1376256 (up from 917504). sieveextensions defaults to 10 (up from 9)* Lots of other minor improvements.Changes in -hp13 ( ann ):* Binaries compiled with OpenSSL 1.0.1g which addresses the Heartbleed vulnerability* Faster blockchain downloadChanges in -hp12 ( ann ):* IMPORTANT: Fix for multiple machines doing the same work if wallet is shared.* New chain statistics in debug.log.* Removed 'primespersec' from the output of getmininginfo.* Removed 'chainspermin' metric.* Replaced -sievepercentage parameter with -sievefilterprimes.* New parameter -l1cachesize for specifying the size of sieve segments.* Added new blocks/day metric which tries to estimate how many blocks will be found at current difficulty.* Better automatic adjustment of primorial factor.* New parameter -primorial for manual adjustment of primorial.* Implemented early support for v0.2 proposal (needs to be enabled with -miningprotocol=2).* David's fix for getwork.* Updated to Bitcoin v0.8.6 codebase.* Improved the checking of BiTwin chain candidates. As a consequence, short BiTwin chains (1 or 2 primes) are now counted correctly in the mining statistics. Primes/h is now much higher due to this.* The Qt application is now titled Primecoin High Performance.* Fixes for Mac OS X and the Clang compiler.* Revised default sieve parameters.* Added an automatic donation feature when a new block is found. The -donationpercentage allows a percentage of the block reward to be donated to an address. E.g. passing the command-line parameter -donationpercentage=1.5 will donate 1.5% of every block to the developer. Alternatively, this value can be set in primecoin.conf. Also, the default address can be changed using -donationaddress.Changes in -hp11: ( ann * Fixed a bug in the BiTwin filter that was inflating the chains/day estimate and reducing the chances of finding a block (thanks to rdebourbon).* Slightly improved the accuracy of the prime probability estimate with regards to the 'sieveextensions' parameter.* Changed the default value of 'sieveextensions' to 9.* Other small fixes and improvements from cabin.Changes in -hp10: ( ann * Major rewrite of the sieve to support extending the sieve (originally implemented by jh000).* Added a new parameter 'sieveextensions' which controls how many times the sieve is extended.* Removed the problematic and unnecessary fast-division test.* Changed the value of nL1CacheElements to 224000 which is slightly faster (thanks to nushor on IRC).* The 'roundsievepercentage' parameter is gone. The round primorial is now automatically adjusted.* New RPC command 'listtopprimes' by Sunny.SHA1SUM: 2610f99d0087bc799050fcbe02482e556df19ae1SHA1SUM: d205da20b41d9eebe9c415144efe13a7efa652b5SHA1SUM: 254087afc81dc054f48e7b1db1957c6cd2dabea6SHA1SUM: 240af66fbf07d3a0b85c386a62faefe8d6afc592Warning to Linux users: My binaries are linked against Berkeley DB 4.8.30. If you have compiled from source before, the database format may be incompatible if you linked against a different version of Berkeley DB. Sunny King's original binaries are linked against Berkeley DB 4.8.24, which should be compatible with my version. Always make sure to backup the database and your wallet before switching builds.SHA1SUM: ea772deda9d3a1d3ced99ba5858ec888d869667cPlease use the SourceForge link for downloading the source code to ease the load on the repository.Older releases are stored on SourceForge:Sample config file for automatic mining:Save the file as primecoin.conf in %APPDATA%\Primecoin (for Windows users), $HOME/.primecoin (for Linux users), or $HOME/Library/Application Support/Primecoin (for Mac OS X users).Q: How many blocks should I expect to find?A: My current formula for turning chains/day into blocks/day is as follows:blocks/day = chains/day * (0.97 * (1 - fracDiff) + 0.03)Here fracDiff is the fractional part of the mining difficulty (i.e. fracDiff = diff - floor(diff)). The 'getmininginfo' command will show both the chains/day value and the difficulty.Q: Is this compatible with the original client? Can I replace primecoin-qt/primecoind with this release?A: Yes, the Windows builds should be compatible with the original client. It uses Berkeley DB version 4.8 so the database format should be the same.Q: Why is the client crashing with the following message?Assertion failed!File: src/checkqueue.h, line 171Expression: pqueue->nTotal == pqueue-> nIdleA: This is a known bug which is present both in this version and the original Primecoin wallet. A workaround is to use a script or a cron job to automatically restart the wallet.Q: How can I fix the client crashing on every startup?A: Try deleting all database files except wallet.dat.Q: Where is the config file located?A: Windows users: The configuration file should be located in the %APPDATA%\Primecoin folder.Linux users: The configuration file is located in your $HOME/.primecoin folder.Mac OS X users: The configuration file is located in your $HOME/Library/Application Support/Primecoin folder.The configuration file is not created by default. If it does not exist, simply create a new text file and save it as primecoin.conf.Q: What are the optimal sieve parameters?A: The default values should be good for most people. If you want to further optimize them, adjust them one-by-one and compare chains/day.Q: Why is my performance worse on Linux?A: This version relies on libgmp to do most of the complex calculations. Make sure your libgmp is up-to-date. Old versions do not support newer CPUs. I suggest compiling your own libgmp from latest source code for maximum performance.Q: Why has my prime rate dropped after updating?A: There are two common cases why primes/s can drop:1. You downloaded the 32-bit version which is slower. Use the 64-bit version if possible.2. Network difficulty has changed. Prime rate goes down when the integer part of the difficulty changes (i.e. going from 8.xx to 9.xx). It's a feature of the mining algorithm and nothing can be done about it.Otherwise please make a post wiith system information (especially CPU model), operating system version and miner version.Q: What is the chains/day estimate?A: Short version: https://bitcointalk.org/index.php?topic=255782.msg2847844#msg2847844 Longer version: https://bitcointalk.org/index.php?topic=255782.msg2848092#msg2848092 Q: How do I solve a problem with the client not being able to synchronize or connect to any nodes?A: Try adding this line to your primecoin.conf file:Also check that your firewall allows outgoing connections to other nodes. You may also allow incoming connections if you want. The default port used by Primecoin is 9911 (TCP).