Primecoin GPU miner for nVidia - Now free for 750ti

I would like to announce another primecoin GPU miner. This miner is currently Linux and nVidia only although GPU portions are written in OpenCL.

The most cost effective solution so far is to use GTX750ti GPU’s. Each GTX750ti, which are ~$140, produces about 2.5X the shares/blocks as 2x E5-2670 processors combined.

The miner uses almost no CPU power as it contains a complete sieve and arbitrary precision arithmetic implementation for GPU. The miner is compatible with most XPT pools.

A binary version locked to ypool and the 750ti with a 10% developer fee is now available. Download is below.

While the other GPU miner will be for sale “soon” and eventually open sourced. I would like to open source this miner immediately. I will make the source in it’s entirety available on github after 12,500XPM have been deposited with the peercoin escrow service at
http://escrow.peercointalk.org/
Proceeds from the developer fee will count towards the bounty. All funds are being transferred to AL9U76JH78egj4JA8VuiFT2x11qNYfMUFd so you can check on the status.

Just to clarify. The 12,500XPM is an aggregate total. Presumably being pooled together by all those interested. After the deal is done, the code will be generally available to all netizens.
I would expect some number of people should get the miner to build, run, and perform as expected before the escrow is released to me.

Known Compatibility:

Linux x86/64
Nvidia GTX570/580 - 570 is 2x as fast as 2x e5-2670. 580 10% faster
Nvidia GTX590 - Trouble with running on both GPU’s at one time for unknown reasons.
Nvidia GTX 750ti - Slightly faster than 580, working on optimizations

Edit1: FuzzyBear has informed me that XPM escrow is possible. So the price will now be 25,000 XPM
Edit2: Apparently it is discount days in GPU miners, price reduced to 12,500 XPM
Edit3: Maxwell port is online, hopefully more performance with optimizations. Not bad at 35 watts!
Edit4: Multiple card support is now working.
Edit5: Binary release made


I have decided to release a binary version of this miner that is locked to ypool and the 750ti card. The miner is only available for linux and tested on Debian 7 - Wheezy. The miner has a dev fee of 10% attached. This dev fee will be applied to the bounty, leading to a release of the source code.

The files are located at:
http://gpile.it/files/jhprimeminer1.01
http://gpile.it/files/libsleep.so
http://gpile.it/files/runit.sh
http://gpile.it/files/miner.sh

You can run the jhprimeminer binary as normal. However I recommend modifying and using the runit.sh script. Sometimes the miner encounters a bug or connection issue and I have coded it to fail fast and quit. Then the script will instantly restart it. This doesn’t happen often, but for unattended miners it is a good thing.

To benefit from the near zero CPU usage of this miner, you must use the libsleep.so. For example:
LD_PRELOAD="./libsleep.so" ./jhprimeminer -o … -p …
The runit.sh script includes this functionality

The miner.sh is an init.d script that will allow you to run the miner on startup. It must be modified for your configuration, paths etc.

The binary has some dependencies. Please run:
apt-get install libssl-dev openssl libgmp-dev


Changelog:
1.01 - Fix bug with using > 4 cards in a single system
1.02 - Build with a lower version of glibc to increase compatibility


FAQ:

Q: Will you port this to windows?
A: No. The GPU code is not an interactive application. Originally it took 16 seconds to complete 1 run. I went through a large effort to split this up into 1 second chunks. This means in windows your graphics will be able to update about every 1 second. This code is meant to run on headless farms and not your home PC.

Q: Will you release a binary for XXX card?
A: Probably not. Kepler’s perform very badly at prime search and use tremendous amounts of power. This is nowhere near profitable, so most likely, I will do all the work of
compiling it for you. You will run it, find out it isn’t worth it and not use it anymore. Which means small entertainment for you, no fees for me. Fermi cards do better but use lots of power. If you have very cheap power or XPM price goes up, maybe this will be profitable and I could be convinced to release something.

Q: What kind of linux should I use?
A: Well, duh, Debian :slight_smile:

1 Like

50 BTC is kinda hefty price, if you ask me. Plus why not accept XPM as payment?

On the other hand, it complements the other GPU miner nicely. That one is for windows only and AMD cards.

I would rather take XPM but the peercointalk escrow service only accepts PPC and BTC. If somebody knows of trustworthy XPM escrow, we can do it that way.

I think 50 BTC is a very low price. Consider that 75 BTC were paid to mtrlt for a miner that did not even exist yet, without escrow, and ended up not working. Also, the primeGPU miner, while not having a set price yet, is rumored to be going for between 20 and 100 XPM per GPU license. With some 2880 licenses being issued in the near future this is almost 1000 BTC in license fees with no source code. With how much time I spent writing this, it’s basically minimum wage anyways.

So no, I’m not going lower on the price.

1 Like

PrimeGPU plans on charging 65 XPM.

primegpu want to sell 2x 1440 licenses = 187200 XPM = 375 BTC

this miner will be released opensource when 50 BTC has been collected by the community

Also, you should cross post this to the Alternate Crypto-Currencies subforum at http://bitcointalk.org if you have not already. I’m curious of the discussion that sparks up. Some people acted like it was a personal attack from the creators of PrimeGPU because it didn’t support nVidia cards in the PrimeGPU thread.

Do you have any plans to make it compatible with AMD cards 7950’s or 280x ? you will get more prospective buyers that way.

No. Originally I had planned on making something that was both AMD and nVidia compatible which is why it is written in OpenCL instead of CUDA. I had endless problems with the AMD compiler and eventually abandoned trying to make it work.  I was also planning on starting a little mining empire and was searching for the best performance/$. At the time I believed 280X cards would at most double the performance but at over 4x the cost of GTX570. Apparently this is not quite true since primeGPU is getting far better numbers than that.
 
I am not really looking for buyers. I think of it more like donations adding up to 50 BTC. I want to release all of this code as a reference implementation, so that people can make improved miners, and primecoin can move forward without the constraints of all this binary only stuff.  Primecoin seems to suffer from this unwillingness of developers to release their improvements. If you look at the devs donation accounts, you can see why. Some of the biggest names have received totals of about 25 XPM. In the very recent past, this almost led to the collapse of the coin. So long without innovation in mining, and so long with botnets doing all the mining, almost drove the price to 0.  On the other hand, when someone offers to sell a binary only version of a miner, they are inundated with request to give them 10's of thousands of dollars. I think the community needs to get together and both give more and demand more.

Very cool. Any chance to release a Windows binary?

Why not annouce the miner at the XPM main thread at https://bitcointalk.org/index.php?topic=251850.0 or at least make a post to point to this thread?

No. Originally I had planned on making something that was both AMD and nVidia compatible which is why it is written in OpenCL instead of CUDA. I had endless problems with the AMD compiler and eventually abandoned trying to make it work.  I was also planning on starting a little mining empire and was searching for the best performance/$. At the time I believed 280X cards would at most double the performance but at over 4x the cost of GTX570. Apparently this is not quite true since primeGPU is getting far better numbers than that.
 
I am not really looking for buyers. I think of it more like donations adding up to 50 BTC. I want to release all of this code as a reference implementation, so that people can make improved miners, and primecoin can move forward without the constraints of all this binary only stuff.  Primecoin seems to suffer from this unwillingness of developers to release their improvements. If you look at the devs donation accounts, you can see why. Some of the biggest names have received totals of about 25 XPM. In the very recent past, this almost led to the collapse of the coin. So long without innovation in mining, and so long with botnets doing all the mining, almost drove the price to 0.  On the other hand, when someone offers to sell a binary only version of a miner, they are inundated with request to give them 10's of thousands of dollars. I think the community needs to get together and both give more and demand more.[/quote]

I agree and would love to see more developers open sourcing their miners, but they have no incentive to do so.They want to maximize their return just as how you were planning to start a “small mining empire”. With that said, I doubt you would have openly asked for donations if PrimeGPU was not out being licensed with plans of being open sourced within the next 6 months. Am I wrong ?

In the spirit of supporting open source, I can send you a 280X to test to support AMD GPU’s. for free., knowing that it will be open sourced. If you can spend more time getting AMD to work, you will have no problem getting 50 BTC for the open sourced code. Once it supports AMD, I will help you get the 50 BTC for your efforts

If i knew C and opencl, i would try to help but i only know Java,Python and Ruby. Plan on starting C and some opencl this summer though

[quote=“optimusprime, post:10, topic:2147”]I agree and would love to see more developers open sourcing their miners, but they have no incentive to do so.They want to maximize their return just as how you were planning to start a “small mining empire”. With that said, I doubt you would have openly asked for donations if PrimeGPU was not out being licensed with plans of being open sourced within the next 6 months. Am I wrong ?

In the spirit of supporting open source, I can send you a 280X to test to support AMD GPU’s. for free., knowing that it will be open sourced. If you can spend more time getting AMD to work, you will have no problem getting 50 BTC for the open sourced code. Once it supports AMD, I will help you get the 50 BTC for your efforts[/quote]

I can’t deny that my hand has been forced a little here. But also I think primeGPU’s was as well. Even at 6.7XPM per day, it’s really just not very much money when XPM is .50 USD, making licenses the only profitable thing to do. This is just crazy when you make software with 10-100x advantage over CPUs and you still can’t compete. It makes no sense that there is so much unprofitable mining of XPM going on.

I have some 270’s. Dealing with the ATI compiler is just not something I have patience for, at almost any price. Also, the architecture of the program is probably not suitable for ATI. The entire thing would need to be rethought and rewritten. All the math is done, and the problems understood, but it’s just a gargantuan project even if the compiler would not fight you every step of the way. Most of this applies to kepler GPU’s as well. Except of course the compiler actually works.

Hi there!

Just wanted to note that we’re going to donate 5 XPM out of 65 XPM for a license to Prime4Commit.
In the end of the day we might make more for the community this way than just open-sourcing our miner.

EDIT: Yea, and ATI compiler is something special.

Primecoin seems to suffer from this unwillingness of developers to release their improvements. If you look at the devs donation accounts, you can see why. Some of the biggest names have received totals of about 25 XPM. In the very recent past, this almost led to the collapse of the coin.

I see, and we are working on that. As mentioned before, Prime4Commit will go online very soon. That way you can accept XPM donations too.

Will I, as a donator, be able to specify which projects I like to donate to? :wink:

Will I, as a donator, be able to specify which projects I like to donate to? ;)[/quote]

yes, it will be similar to http://peer4commit.com/projects

I’d like to show you all one of my farms. Obviously you don’t want to end up with one of those nasty things built out of shoe racks. I’ll probably make another thread detailing the process. You want to end up with this:

Which is made out of these funky Dell 745/755 machines. I’ve heard that Dell Vostro is much easier to deal with, but no matter where you are, 745’s can usually be picked up in bulk for about $30 each.

The inside, shown below, details the outfit. Most of the 745’s I got did not come with a hard drive, so I setup PXE network boot for all of my nodes. The heatsink cowling gets in the way so I had to remove it, rotate the heatsink 90 degrees and then reattach using zip ties. The motherboard is essentially on the wrong side of the case, so there is some difficulty fitting in 2 wide cards. For 570’s I typically remove the sheet metal bracket from the card. The power supply comes with neither molex or PCIe power connectors, however it is large enough for a GTX570. I use a pair of molex to PCIe adapters, cut off the molex and use wire nuts to attach to all available 12 volt wires.

But when your done it’s all worth it. Easily stackable, quiet and cool. An entire rig costs about $140 complete.

Binary version for 750ti has been released. Files available in first post.

Trying to test it out. How do you run in multi-gpu mode? A separate process for each GPU? Thanks.

Use the -g option to set the gpu index for each process. I use a seperate runit.sh for each process as well.

Testers, please post results when you get some! Thanks!

Sent from my Nexus 5 using Tapatalk