Pages:
Author

Topic: Bounty[PAID OUT] : a bitstream for better utilizing the Cairnsmore1 157-294.5btc - page 12. (Read 21997 times)

sr. member
Activity: 407
Merit: 250
To be fair to ngzhang, he lists the software he uses and the fact that it's pirated. Piracy is legal in China and makes up a sizeable chunk of their economy.


From the icarus thread:

4, DEV kit include a XILINX platform cable USB, a USB stick with XILINX ISE 13.2/ altium 10/ synplify 2011.03, modelsim 10, all with crack but use as your own risk, commercial use is  illegal in my country (but legal for personal use in my country )) .

Yes I agree, I wasn't intending that as an "accusation" but more of a statement as to why it's complicated for anyone else to recreate his results from his source code.

Also it should be clear this software isn't all used in synthesizing his bitstream, only Xilinx ISE and Synplify.

And the part that is a pain though, is his opensource code doesn't include any project files, settings, or configurations, and it requires a fairly elaborate setup mixing multiple tools for various subsections of the bitstream in order to get it to build at all without failing hard. None of this is documented or provided (without extraordinary measures in digging up the info) Smiley

I was mostly trying to be clear that I will in fact release the source (I must because it's opensource) including my work and modifications for cairnsmore, but when I do it will be challenging for others to recreate without these tools (though I will do my best to provide better resources to at least assist in the process).

My own bitstream will not be using anything but the default Xilinx ISE to do the build. But once again, that one is a long way off (and the model for it to be released is still "undetermined", if I beat Enterpoint to the punch, they will license it from me, but that's not an exclusive license, so I may still release it in another form). Depending on the circumstances at the time, I may very well opensource it completely, that's all to be determined still...

Either way the opensource bitstream built off ngzhang's code (which is in turn derived from Ztex code) should provide a SIGNIFICANT boost over the existing options, and provide a means for the cairnsmore to get up to at least 2x Icarus type performance (760Mhash), with a hope I'll hit 800Mhash with it. I won't try to push it much beyond that unless we have any more major breakthroughs. But after that I'll release the code, and the community is welcome to go nuts with it Smiley while I shift my focus to the 100% custom bitstream which is far more optimized for the cairnsmore's unique benefits.

Also there is a chance once I'm done with it, that enterpoint can "tweak" it to get a bit more of a boost out of it. We'll have to wait and see where they take it.

Anyway, I'm going to get back to work, I'll post back more info once we have it.
newbie
Activity: 54
Merit: 0
To be fair to ngzhang, he lists the software he uses and the fact that it's pirated. Piracy is legal in China and makes up a sizeable chunk of their economy.


From the icarus thread:

4, DEV kit include a XILINX platform cable USB, a USB stick with XILINX ISE 13.2/ altium 10/ synplify 2011.03, modelsim 10, all with crack but use as your own risk, commercial use is  illegal in my country (but legal for personal use in my country )) .
sr. member
Activity: 407
Merit: 250
Fair enough. Thanks for all of your support.

I hope I can stand up to your expectations and deliver very soon.

As for the controller, It was built purely by enterpoint. I have access to their source code and I have played with it (and made several suggestions to them, some of which have been implemented) but all the code at this point has been written by them. I have some ideas for it, but I'm focusing 100% on the matrix chips for now.

I'll post more information once I have it. It's a slow process but I definitely feel like I'm VERY close right now. At the very least you should start seeing several incremental improvements over what you have now in the coming days.

Thanks again.
sr. member
Activity: 476
Merit: 250
Keep it Simple. Every Bit Matters.
Glad we got people like Glasswalker working on this.

Thank you!
full member
Activity: 176
Merit: 100
Thanks!

Thanks to you!  I can imagine how much time it consumes and how difficult it is find this time beside the daily business.

Do you work on the array controller also? What additional third party tools was in the game ?


 
sr. member
Activity: 407
Merit: 250
I think if enterpoint also honor him it is only fair to give the bounty.
I will send my BTC to you.

To clairify, I haven't achieved an improved bitstream YET... But hopefully soon Wink

I hope you didn't mean you'd send ME your money now (but the OP so he can gather the bounty) Smiley

Just clarifying, didn't want a misunderstanding. I DO however hope to succeed very soon. I'm busting my ass to get this working.
hero member
Activity: 686
Merit: 500
I think if enterpoint also honor him it is only fair to give the bounty.
I will send my BTC to you.
sr. member
Activity: 407
Merit: 250
But I would definitely kick in something significant as a thank you, and more so if it is Glasswalker out of sympathy for his recent troubles.

First let me say thank you very much for your consideration and support for my "troubles" of late Smiley It's nice to not have someone crying for my blood these days Wink

Also to clarify the speculation on this thread. Yes I have made a fairly major breakthrough on the bitstream... And I would be GREATLY appreciative of any help this bounty can give me (provided I can satisfactorily meet your criteria).

Some quick pieces of info:

- I am working on a 100% custom bitstream, which I am not very close to completing (weeks away at the least, it's EXTREMELY complicated as ET, Enterpoint, and ngzhang can all confirm for you I'm sure). And it takes a HUGE amount of time just to do a test compile/synthesis. Even more for optimization.

- In light of the large delay from a better release, I have shifted my efforts back to an opensource bitstream port of the Icarus bitstream. I had some inspiration/realizations that I thought would allow me to succeed getting an Icarus based bitstream (with several modifications and many fixes/tweaks) to run well on the Cairnsmore1. So I began working on it again.

- I am working on 2 parallel forks right now, mainly because I have 2 workstations, my powerhouse (which is actually owned by my employer, but they let me use it for "side projects" when it isn't tied up with work for them) and the other is my home machine. My home machine is not a super-powerhouse, but it can still do fairly decent compiles, so I use it for my main development machine, and for doing initial builds of the bitstream (a single "compile" to a finished bitstream takes about 4 and 48 hours on my home machine, yes it varies that much depending on several factors). The work machine can run about 12 compiles in parallel at about the same speed. And so Xilinx has a tool called SmartXplorer, which basically spawns off a cluster of every possible compile option, attempting to optimize the hell out of the bitstream to improve clock timing, or placement, or resource utilization, or whatever... I use my work machine for this tool, it runs 12 in parallel, and it runs around 100 passes to come to a full optimization.

- I have built a 200Mhash/fpga (so 800mhash on the cairnsmore1) bitstream on my home machine, but it did not meet timing (it was only able to achieve about 50% clock). I then started it running the optimization at work about 1 week ago. As of Friday it was about 75% complete, but one of the "candidate" builds was VERY close to meeting timing. So I sent it to enterpoint to do testing on their test rig. They were able to achieve some good results (200mhz per chip stable for 30min straight, but it locks up when doing real hashing). This particular candidate was only off from meeting it's timing by about 5%. So a minor additional improvement may help.

- Since that build, last week... I started a second "fork" of the code, with several additional adjustments, fixes, and a few new added features to hopefully improve stability greatly of both the clocking, and the communications code. This fork right now is built around a 175Mhz clock, meaning that each FPGA would pull 175MHash/s (700MHash/s for the whole board). But it can easily be tuned in 25Mhz increments. (meaning 200Mhash is a fairly short step up for it, and it's a minimal modification).

- Once the 200Mhz build is done optimizing (which it should be today, but I need to head into my office to confirm if it finished and check status). I'll fire up the optimization pass on the 175Mhz version. The "original" build of the 175Mhz one is MUCH closer to meeting timing than the 200Mhz one was, and it has improvements for communications and stability. So hopefully it will close timing much faster (ie one of the early attempts will meet the timing requirement, providing a rock solid stable build). If this happens I will send it immediately to Enterpoint, for testing and "official" release.

- My hope is that either the 200mhz one will have succeeded, and that's a quick win later today, or that the 175mhz one will succeed early on, and allow a quick incrimental improvement up to 200mhz after initial release.

- Once I achieve a successful build of the opensource bitstream, I will resume my work on my "from scratch" bitstream. It should significantly outperform the opensource one, but it's a ways off still...

- As for compensation agreement. I have an agreement with enterpoint for the "from scratch" one, that if I release it before they finish their own, they will license it from me for a fixed fee. As for the opensource one, it's opensource. So when I'm done I'll gladly release the source (right now it's in too high a state of flux, and I don't have the spare time to deal with releasing/documenting it right). One concern though, one of the main problems with the icarus code is that it wasn't released by ngzhang in a way that allows an easy build. It's missing all the project files, and so it took a fair bit of work just to get it to build. And I found out (through much digging) that ngzhang requires the use of another third party tool which is commercial, and very expensive to even successfully build his code in the first place (which I believe he pirated). So the code derived from the icarus code may be useful to someone with a fair bit of experience, but it's not the kind of thing that could be setup so "anyone can build it" because the original source requires special tools and so on which aren't free... And I've had to carry this over unfortunately, even with my modifications. But I will do my best to release it in a way that is documented well and includes as many of the missing pieces as possible, so hopefully someone with more time in the community can improve upon it further.

- Anyway, so that's all the facts laid out in the open for you. I'd be extremely happy for any help this bounty can provide once I actually deliver a working bitstream. My motivation for this was never the direct compensation from Enterpoint, though that helped sweeten the pot some, but more so the fact that the syndicate was buying a large amount of cairnsmore boards and this would help us profit from them better. And hopefully I could make a few bucks on the side for my work (which is not being done as part of the syndicate by the way).

- As a rough gauge as to level of effort... For the "from scratch" bitstream, I have put approximately 200 hours of work into it so far (in my own time outside my day job). And the opensource bitstream has required another approximately 80+ hours of the same so far on getting it to the stage it's at now. So this is not a simple task by any means.

- Not that it should matter in your decision making process, but if this works out and I can claim the bounty, I will use the money to help rebuild the syndicate in light of the money that was stolen. But that said, I want to be clear in my intentions. I do not believe I am at fault for what happened, and I stand by my decisions. It was tragic that the money was stolen from myself and the syndicate in the way it was. This work was always "my" work, not the syndicates. And so while I will use the money to help rebuild the syndicate, I will not directly "give" the money to the syndicate. Both because I don't feel it's neccisary, and because I feel that doing so would in a way, be an admission of guilt (and I am not guilty of anything here). What I propose to do (provided my shareholders agree) is to use money you provide, and any "compensation" from enterpoint to aquire Cairnsmore boards, which will be loaned to the syndicate to mine for the syndicate until the syndicate is caught back up to 12Ghash of it's own mining power (which is where it was before the theft). I will likely mine for them longer than that to help build it up further of course, but that's the approach I intend to take if I can gain this bounty.

Anyway I hope that helps clarify for you, I'm going to quit writing a giant wall of text now, and get back to work on that bitstream!

(oh and one last thing, in addition to the money, it would be nice to throw in condolences to my wife for loosing her husband for the past couple months while I worked on this in addition to my already demanding day job) lol.

Let me know your thoughts. And it would be nice to see a single centrally clarified post of what the "criteria" are for this bounty, so I know where my "goalposts" are.

Thanks!
legendary
Activity: 1379
Merit: 1003
nec sine labore
Once things get started, they are getting momentum Wink

Yohan's announcement to me sounds like Glasswalker successfully took a major hurdle and might finalize what he is working on soon.

I am still committed to support the bounty, but do we need to clarify that the winner can't be Enterpoint or someone already being paid for his work by Enterpoint? Or do you think it would be ok to pay the bounty on top of the payment as additional incentive to hurry up?


Given that we're using our boards at half their speed (or even less) I'd say I'm willing to send Glasswalker my bounty if he is the one behid Yohan's announcement if he can give us a solution and he is willing to support it for as long as it takes to have a stable bitstream/miner program.

spiccioli.
donator
Activity: 919
Merit: 1000
Once things get started, they are getting momentum Wink

Yohan's announcement to me sounds like Glasswalker successfully took a major hurdle and might finalize what he is working on soon.

I am still committed to support the bounty, but do we need to clarify that the winner can't be Enterpoint or someone already being paid for his work by Enterpoint? Or do you think it would be ok to pay the bounty on top of the payment as additional incentive to hurry up?
full member
Activity: 176
Merit: 100

Quote
   b) also preferring open source, but does it really help here? we have Icarus source available, but nobody is able to correct one RX/TX line swap Huh

NZhang only published the bitstream and called that open source.  According to Glasswalker, none of the build files are available.  With a real open source publication, I think you will be shocked at how quickly faster bitstreams start to appear.

I'v already tried to generate an icarus based bitstream few weeks before. ISE project files were missing but there was a short description http://en.qi-hardware.com/wiki/Icarus#FPGA_core how it works. Without manual optimization and with the included sythesis tool the build fails during place and route. Guess using synplify instead may helps but i did't have access to that and i would be surprised if enterpoint have a license. I did'nt spent much time and i did'nt check anything around(verilog, ucf files..) so maybe there are other options like reducing pipes to get a slower but usable bitstream for the two lazy cores.

Hpman

I forget one thing - I'm in with 1BTC too.
hero member
Activity: 686
Merit: 500
donator
Activity: 919
Merit: 1000
I agree that it is unfair to cut off the bounty solely on an Enterpoint release, and would discourage anyone from working on it.  Part 2 of your proposal makes me dizzy and you're going to get into debates on the actual values for each delta to calculate it.

I also prefer requirements to be kept simple. But I had one specific thing in mind with my second part: competition for higher speed. We have two measures to achieve here, getting a fast bitstream and getting it soon. Paying only the developer that shows up first biases the development effort towards a bitstream that just passes the minimum requirement but no more. Say someone that is already working on a bitstream and delivers 750MHps begin of August, but someone else had an idea for a 900 one, but this will take him at least end of August to finalize. The second part of my proposal would allow him at least to earn the delta for some while and motivate him to finish his work even when we had already a 'winner'.

Quote
I will make one caveat here. I will not pay a single Satoshi for delivery of a bitstream with any form of copy protection, that includes ET's sharecropping scheme or anything else that would prevent loading on any compatible board.
I do not like ET's approach either, but if someone succeeds to run it on CM1, I will use it. Alas, this would not qualify to get the bounty we are discussing here - fully agree that it must be a transparent bitstream that operates with any established pool without third party interaction.

Quote
I will match Zefirs commitment of 50 BTC for any bitstream that meets or exceeds the 750 MH/s rate and 48 hour stability up until August 31st, or the earliest Enterpoint release of a 4 processor hashing bitstream whichever happens last.
Not sure if 'whatever happens last' is ok. What if Enterpoint releases a bitstream late (say: never)? I am not going to pay for that in 2013. Shouldn't it be more 'whatever happens first'?

Quote
Further I offer 100 BTC as a bonus under the following conditions:
1.  At least 300 BTC including my 50 BTC above is committed to the bounty by the community under the terms finally agreed upon (minimal free riders)
2.  All the files required to build the bitstream are published and released under a version of the GPL or more permissive license terms.
3.  The bitstream is released on or before August 5th.
4.  No Enterpoint bitstream using all 4 FPGAs has been released beforehand.
To
1: if there are 400+ boards in the wild and anyone is willing to contribute 1BTC per board, we should reach that.
2: a) there might be NDA information that prevents open sourcing
    b) also preferring open source, but does it really help here? we have Icarus source available, but nobody is able to correct one RX/TX line swap Huh
    c) if it goes open source, those who contributed to the bounty should get it 4 weeks before it goes public (incentive against free-riding)
3: is this realistic? this are only two weeks from now on, do you think Enterpoint had not already provided a bitstream if it was that easy?


All in all, we should reach a consensus soon and have 500-1000BTC waiting for a smart developer, which (besides theymos' offer for rewriting SMF) should be one of the largest bounties around Smiley
hero member
Activity: 556
Merit: 500
Well damn, im glad this thread is here. It shoulden't be too hard to get the other pair of fpgas working with an icarus bitstream that would be a good amount of btc for not much effort. Unless of course the controller has issues, which I think it does then an open source bitstream just for the controller would be a good idea.
hero member
Activity: 756
Merit: 501


Right now the greatest uncertainty factor is how 'soon' Enterpoint will provide their dedicated CM1 bitstream unleashing the full power of the board. Nobody would start working on a new bitstream when we fully make it dependent on non controllable third party events - it must be a combination of intra- and interdependent compensation.


I agree that it is unfair to cut off the bounty solely on an Enterpoint release, and would discourage anyone from working on it.  Part 2 of your proposal makes me dizzy and you're going to get into debates on the actual values for each delta to calculate it.

I will make one caveat here. I will not pay a single Satoshi for delivery of a bitstream with any form of copy protection, that includes ET's sharecropping scheme or anything else that would prevent loading on any compatible board.

I will match Zefirs commitment of 50 BTC for any bitstream that meets or exceeds the 750 MH/s rate and 48 hour stability up until August 31st, or the earliest Enterpoint release of a 4 processor hashing bitstream whichever happens last.

Further I offer 100 BTC as a bonus under the following conditions:
1.  At least 300 BTC including my 50 BTC above is committed to the bounty by the community under the terms finally agreed upon (minimal free riders)
2.  All the files required to build the bitstream are published and released under a version of the GPL or more permissive license terms.
3.  The bitstream is released on or before August 5th.
4.  No Enterpoint bitstream using all 4 FPGAs has been released beforehand.

sr. member
Activity: 476
Merit: 250
Keep it Simple. Every Bit Matters.
I think you need to include a specific expiry date after Enterpoint releases a functioning bitstream.  I'm not too interested in paying out a bounty some months after a faster solution is released.

Or, possibly a complete open source publication of the solution including all the necessary files to build it from scratch and clear documentation of how to do so.  That I would be willing to fund at some value X before Enterpoint gets a solution, and perhaps X/2 after the solution is released.

This is a good idea, and I will post a substantial addition to the bounty once the terms are defined.

I agree with most of that.
Open source would have to be part of the deal, I'd gladly put some bitcoins towards that.
Don't care who makes it, could even be enterpoint themselves, might encourage them to speed up the process.
donator
Activity: 919
Merit: 1000
I am willing to support this bounty, but also agree with Entropy-uc that it does only makes sense if the folks mining with CM1 can profit from it.

Right now the greatest uncertainty factor is how 'soon' Enterpoint will provide their dedicated CM1 bitstream unleashing the full power of the board. Nobody would start working on a new bitstream when we fully make it dependent on non controllable third party events - it must be a combination of intra- and interdependent compensation.

This is how I would word my contribution to the pledge:

1) I will pay out 50 BTC to the first community member that develops and releases a bitstream for CM1 before 2012-08-31 that provides long term operation with an average hashrate of at least 760 MHps per board. The bitstream does not need to be open sourced itself, but the API must be provided along with a proof-of-concept implementation support for an established open source miner (cgminer, MPBM, etc.) and full step-by-step documentation to reproduce the correct set-up.

2) Starting from the release day of the developed bitstream and until 2012-10-30, for each day I will pay the developer a performance bonus of (B - N) / 200, where B is the bitstream's hashrate and N is the hashrate of the second best publicly available bitstream. Example: if B was 840MHps and twin_test.bit still the fastest one with 380MHps, I'd pay a daily bonus of 2.3 BTC until end of October. The bonus payments are calculated daily, i.e. from that day Enterpoint provides a bitstream operating at 760MHps, the bonus drops to 0.4BTC/day for the remaining period.


I must admit that I don't have a clue on how long it takes to develop a new bitstram from scratch (seeing that ngzhang is already months late for Lancelot raises some doubts). Also I did not put much thinking on whether the both incentives are well balanced. It is a first shot, but this is basically what I would be willing to contribute.
legendary
Activity: 1022
Merit: 1000
BitMinter
You should send a board to ZTEX Wink
legendary
Activity: 1379
Merit: 1003
nec sine labore
I'm in with 10 BTCs

spiccioli
newbie
Activity: 49
Merit: 0
add another 1BTC to the pot Smiley
Pages:
Jump to: