--icarus-options :2:1
Oh awesome, will this convince cgminer to adjust the hashrate estimations for single-chip setup?
Also Kano, come see me on IRC (#cm1 on freenode) or PM me. We're working on an addon to the icarus protocol to the hashvoodoo bitstream as a temporary measure until we can do the full protocol overhaul. It is technically in place in the current bitstream but it's broke, so it is basically un-used (I'll be fixing it in the next couple days). This addon leaves it backwards compatible with icarus, but with 2 major differences:
1 - It can now support specially constructed icarus style packets which act as "control" packets, to send other commands to the FPGA (right now the implemented one is "Set Clock Multiplier" for a given chip, allowing dynamic clock tuning)
2 - It is potentially vulnerable to malicious work sources. (if a pool operator knows the "special" packet format, they could send work down so a miner using the conventional icarus protocol and unaware of our additions would simply pass that work along to the fpga. This would allow the pool to directly control the clock of your FPGAs... We do have min/max in place to keep from physical damage to the chips, but it could still serve as a DOS (set clock to minimum multiplier effectively killing mining output, or setting it to max, potentially overheating it over time).
So this will require miners to add in special support for the newer hashvoodoo bitstreams on CM1 (or any other board it gets ported to) which will catch any packets which meet our "command packet" protocol coming from the pool and drop them (they should never occur in real mining, so it would be obviously either severely corrupted, or malicious).
And hopefully add support to actually use the clock tuning from the mining software.
Anyway, come see me, and I can help give you the details on this so you can start working it into cgminer.
I'm likely at LEAST weeks, if not a month or more away from the "final" protocol change, which will be a completely new protocol, so in the meantime this is a nice stop-gap measure that provides added functionality with minimal work, and provides backwards compatibility. And buys enough time to really think through the new protocol and make sure we "do it right" from the beginning.
Thanks!
EDIT:
For a TLDR version of this for those of you using the current bitstream:
- You are not at any risk at all, the "enhanced" protocol doesn't work currently in the existing bitstreams
- Once I release one where the dynamic clocking DOES work, you will want to use mining software which supports the "enhanced" protocol for security reasons.
- Even without said software support, it will still mine on older "unsupported" software fine, and the only real risk is if your pool decides to act maliciously (which is unlikely for most).
- That said, you will want to use this feature once it's out anyway, as it will allow faster mining.
Thanks!