Pages:
Author

Topic: Want legit 7970 testing/benchmarking and tuning for cgminer and Diablominer? - page 6. (Read 19834 times)

donator
Activity: 1218
Merit: 1079
Gerald Davis
It honestly astonishes me that he only received about $30 in bitcoins for developing the diablominer. Hell, I personally sent like $20 worth of btc to the guiminer developer. People are ungrateful.

No people need an incentive.  Many in the OpenSource community fail to understand that.  Bounties are effective tool.  Giving something away for free and expecting retroactive compensation is not.

The bounty project I (and others) started to add RPC support to cgminer paid out over 125 Bitcoins for a relatively (compared to say a complete miner) simple addition.  

Maybe Diablo should look at it as a business proposal rather than charity.  

1) Raise funds to purchase 7970.
2) Calculate time value of coding optimizations for 7970
3) Start a bounty funds to collect funds in exchange for optimized 7970 code.
4) When bounty is paid distribute funds to himself and those who fronted the capital.
5) Release code


Bounties are not, and never have been, a viable way of FOSS donations. People constantly renege on bounty promises, and often had no intention of paying up to begin with. And I don't know about you, but I don't have $500 in cash laying around. I doubt most people do.

Is it worse than doing work for free, then begging for donations after the fact and getting bitter than you earned less than minimum wage?

OTC ratings can be used for bounty promises. 
OTC can be used for bounty promises.  Still payout rate for the RPC project was over 87% just based on promise to pay.

Quote
but I don't have $500 in cash laying around. I doubt most people do.
You are asking for donations why not ask for investors? (i.e. step #1 in the quote you quoted).
legendary
Activity: 1162
Merit: 1000
DiabloMiner author
It honestly astonishes me that he only received about $30 in bitcoins for developing the diablominer. Hell, I personally sent like $20 worth of btc to the guiminer developer. People are ungrateful.

No people need an incentive.  Many in the OpenSource community fail to understand that.  Bounties are effective tool.  Giving something away for free and expecting retroactive compensation is not.

The bounty project I (and others) started to add RPC support to cgminer paid out over 125 Bitcoins for a relatively (compared to say a complete miner) simple addition. 

Maybe Diablo should look at it as a business proposal rather than charity. 

1) Raise funds to purchase 7970.
2) Calculate time value of coding optimizations for 7970
3) Start a bounty funds to collect funds in exchange for optimized 7970 code.
4) When bounty is paid distribute funds to himself and those who fronted the capital.
5) Release code


Bounties are not, and never have been, a viable way of FOSS donations. People constantly renege on bounty promises, and often had no intention of paying up to begin with. And I don't know about you, but I don't have $500 in cash laying around. I doubt most people do.
donator
Activity: 1218
Merit: 1079
Gerald Davis
It honestly astonishes me that he only received about $30 in bitcoins for developing the diablominer. Hell, I personally sent like $20 worth of btc to the guiminer developer. People are ungrateful.

No people need an incentive.  Many in the OpenSource community fail to understand that.  Bounties are effective tool.  Giving something away for free and expecting retroactive compensation is not.

The bounty project I (and others) started to add RPC support to cgminer paid out over 125 Bitcoins for a relatively (compared to say a complete miner) simple addition. 

Maybe Diablo should look at it as a business proposal rather than charity. 

1) Raise funds to purchase 7970.
2) Calculate time value of coding optimizations for 7970
3) Start a bounty funds to collect funds in exchange for optimized 7970 code.
4) When bounty is paid distribute funds to himself and those who fronted the capital.
5) Release code
hero member
Activity: 886
Merit: 500
Don't understand why everyone is shitting on Diablo.

He. Created. A. Freaking. Miner. That is not a small achievement.

The fact the he was nice enough to release it for free the first time is AMAZING. There is every incentive in the world to keep it to himself, as once the code got into the wild, everyone else started mining on GPUs. He could have kept it to himself and had his single GPU mine at incredible speeds compared to everyone else's CPU.

And everyone shitting on him now should know that when he does "get a job" and buy one for himself, he'll probably sit on the code personally if it ends up being a great improvement in hash rate. And you will be the reason.

It honestly astonishes me that he only received about $30 in bitcoins for developing the diablominer. Hell, I personally sent like $20 worth of btc to the guiminer developer. People are ungrateful.
legendary
Activity: 1428
Merit: 1001
Okey Dokey Lokey
I heartily endorse this event or product.
+1

I do aswell, Really do, But it is indeed with the Krusty The Clown style
legendary
Activity: 1162
Merit: 1000
DiabloMiner author
Donation current count: 7.01002 out of 150
-ck
legendary
Activity: 4088
Merit: 1631
Ruu \o/
sr. member
Activity: 256
Merit: 250
Yay, we are all waiting for more than a year Smiley I constantly have problems with BFI patching on my kernels and besides that, there are some rare cases that amd_bytealign would do a good job for me but it's clobbered in a way due to that patching, grr!

But truth is it did not appear in SDK 2.6. I am not acquainted with AMD's OpenCL on Windows, but with linux since recently they started shipping the opencl library as part of the Catalyst suite rather than part of the SDK package. That means with each new driver you get new surprises, hopefully pleasant ones Smiley

However both 11.11 and 11.12 do not map bitselect to BFI_INT. Neither does the "preview" OpenCL 1.2 driver you can download from their site. It's annoying to say at least Sad

legendary
Activity: 1162
Merit: 1000
DiabloMiner author
You are wrong about that. There is a BFI intruction in the GCN architecture - v_bfi_b32. Strange though, there is no "s_" equivalent on the scalar unit. But it is there. I have occasionally seen that in my Tahiti kernels and you can also grep it from libaticaldd.so.

Now bitselect() does not map to v_bfi_b32 for sure, yet some patterns of the kind (a&b)|(~a&b) where part of the variables are constants do produce bfi code.

I cannot patch the binary of course because the architecture is different and the opcodes are different as well. Trying to patch the binary the same way I do for VLIW kernels does nothing. I guess until the 79xx ISA reference comes out, using bfi on GCN hardware would not be possible. Unless they finally map bitselect to bfi of course.

I'll have to keep that in mind, but I hope they fix the driver and/or the SDK to emit BFI for bitselect(). It would make a lot of people's lives easier, and speed up existing unoptimized code.

http://forums.amd.com/devforum/messageview.cfm?catid=390&threadid=143488&highlight_key=y

That URL implies BFI will be output for bitselect() on SDK 2.6. I wonder what happened
sr. member
Activity: 256
Merit: 250
You are wrong about that. There is a BFI intruction in the GCN architecture - v_bfi_b32. Strange though, there is no "s_" equivalent on the scalar unit. But it is there. I have occasionally seen that in my Tahiti kernels and you can also grep it from libaticaldd.so.

Now bitselect() does not map to v_bfi_b32 for sure, yet some patterns of the kind (a&b)|(~a&c) where part of the variables are constants do produce bfi code.

I cannot patch the binary of course because the architecture is different and the opcodes are different as well. Trying to patch the binary the same way I do for VLIW kernels does nothing. I guess until the 79xx ISA reference comes out, using bfi on GCN hardware would not be possible. Unless they finally map bitselect to bfi of course.
legendary
Activity: 1162
Merit: 1000
DiabloMiner author
What makes you think you won't need it?

No bfi_int instruction on that arch, apparently. Unless there is a useful replacement, we use the normal code path.
sr. member
Activity: 256
Merit: 250
What makes you think you won't need it?
legendary
Activity: 1162
Merit: 1000
DiabloMiner author
It does not (tried personally) - bitselect is still not mapped to BFI_INT. Although it is now exposed at IL level at last.

Heh, still, we won't need it on 79xx, the existing BFI_INT code can stay.
sr. member
Activity: 256
Merit: 250
It does not (tried personally) - bitselect is still not mapped to BFI_INT. Although it is now exposed at IL level at last.
sr. member
Activity: 574
Merit: 250
So if you truly believe you have a better moustrap- invest in yourself and buy a card, and sell the resulting improvements as a new commercialized version of your miner. The world will beat a path to your door and provide you with a revenue stream to keep up support and future improvement on your product.

Or, as suggested before, if you want an evaluation copy for legitimate evaluation and benchmarking purposes- provide suitable credentials and documentation to the manufacturers and they will ship you a card for testing and developmental work. In fact, you could probably get on the bleeding edge and receive red cards for testing of release candidates. You might even have something valuable to suggest to them in the testing process that would make their card better.

Acting petulant about getting the community to buy you one is probably not the best strategy. With the card in the wild it will be a matter of days before one of the enormously talented coders tweaking in the community fine-tunes the code anyway.
legendary
Activity: 1162
Merit: 1000
DiabloMiner author
First thing is that _NO_ miner would work on GCN without modifications. The reason is simple: the BFI_INT replacement routine. GCN is a completely different architecture and so is the opcode. So no miner would produce correct results (if they produce any results anyway).

This needs to be changed.

Then GCN architecture puts an end to the need to vectorize. Any current kernel would be inefficient on GCN without a rewrite.

In fact without a rewrite, you are not getting slower, unoptimized version of the miner for the GCN hardware. You are not getting a working miner at all.

Every miner I know has an option to disable BFI_INT patch otherwise they wouldn't work for Nvidia cards.

So while results may not be optimized the 7970 would work just fine "out of the box" with most (all?) current miners.

Detecting VLIW5/4 and only running bfi_int on those is simple. Plus, 2.6 is supposed to fix the bfi_int bug, although I have not tested it, but I've been told it should actually work correctly with bitselect().

GCN does not end the need for manual vectorization, it just makes the helical wound uint2 vectorization we use now less optimal. Most likely DiabloMiner already has an (more) optimal vectorization already available, but without a GCN card myself, theres no way to find out.
sr. member
Activity: 256
Merit: 250
Nice, that would explain why experimental results are just a bit better than 6970.

One more reason why optimized code for GCN should not be released in public Smiley
donator
Activity: 1218
Merit: 1079
Gerald Davis
First thing is that _NO_ miner would work on GCN without modifications. The reason is simple: the BFI_INT replacement routine. GCN is a completely different architecture and so is the opcode. So no miner would produce correct results (if they produce any results anyway).

This needs to be changed.

Then GCN architecture puts an end to the need to vectorize. Any current kernel would be inefficient on GCN without a rewrite.

In fact without a rewrite, you are not getting slower, unoptimized version of the miner for the GCN hardware. You are not getting a working miner at all.

Every miner I know has an option to disable BFI_INT patch otherwise they wouldn't work for Nvidia cards.

So while results may not be optimized the 7970 would work just fine "out of the box" with most (all?) current miners.
sr. member
Activity: 256
Merit: 250
First thing is that _NO_ miner would work on GCN without modifications. The reason is simple: the BFI_INT replacement routine. GCN is a completely different architecture and so is the opcode. So no miner would produce correct results (if they produce any results anyway).

This needs to be changed.

Then GCN architecture puts an end to the need to vectorize. Any current kernel would be inefficient on GCN without a rewrite.

In fact without a rewrite, you are not getting slower, unoptimized version of the miner for the GCN hardware. You are not getting a working miner at all.
sr. member
Activity: 406
Merit: 250
QUIFAS EXCHANGE
because we are all beging for a 7970 now. I would also like one on someone elses dime. All donations to buy me a 7970 should sent to Theymos with the message "This is a donation for the forum" attached so I know what to reply with.
Pages:
Jump to: