Yes, I suspected xenonxcat must be doing multiple blakes in parallel.
Thanks for pointing me to Samuel Neves’s SIMD implementation;
I will happily try to make use of that…
@kenshirothefist, A little appreciattion to these miners developers. Shower them with your love. A little BTC donation would not be bad. Thanks,
Thank You very much for You efforts and contribution!
Just a few questions about.
During installation I got an error:
collect2: error: ld returned 1 exit status
Makefile:183: recipe for target ‘nheqminer’ failed
make: *** [nheqminer] Error 1
It is said on GitHub - nicehash/nheqminer: Equihash miner for NiceHash that boost 1.68 must be installed, but such version does not even exist on official site, current is 1.62.
Could You please clarify what can be wrong here?
There was a typo, Boost 1.62 is what you should get.
You should show some more lines of your error. Best you report all issues here: Issues · nicehash/nheqminer · GitHub
I will try on pure system. Thanks for the link.
Currently running @sarath-hotspot code with trumps solver.
How do we run more than 1 core ?
Edit: Seems I’m running 100% so it’s actually mining with all cores.
./src/zcash-miner -genproclimit=4 …
Edit : Your right (post limit)
Good job tromp!
I am exited to try the Cuda miner on Windows10 on my GTX card, for sure the results will be amazing!
after lots of code variations and benching i distilled the best micro-optimizations in the latest commit.
Performance is up to 4.5 Sol/s single threaded on 4Ghz Core i7.
Tried on a pure Debian Jessie, the same, its not compilable on Debian by default.
@nicehashdev, @counsellor: check my answer at Make Error · Issue #1 · nicehash/nheqminer · GitHub
In my case it did not work. It is a pure Debian Jessie with only needed packages installed, qt5-default, make, g++, gcc, build-essential.
Zooko, I’m stumped. Is there any decent documentation on blake2bp anywhere? You said it does 4 blake2b’s in parallel, yet it has the same interface:
int blake2bp_init_key(blake2bp_state *S, size_t outlen, const void *key,
size_t keylen);
int blake2bp_update(blake2bp_state *S, const uint8_t *in, size_t inlen);
int blake2bp_final(blake2bp_state *S, uint8_t *out, size_t outlen);
int blake2bp(unsigned char * out, const unsigned char * in, size_t inlen);
as the plain version. So how would you pass in 4 different inputs and get 4 different outputs?
Ok; after some discussion on Slack with str4d and cminer, I now understand that blake2bp is not for computing independent blake2b’s. It’s just a way to break up an input stream into fragments it can process in parallel and recombine in the end to get a completely different hash function.
Just another variant of blake2:
Q: BLAKE2bp gives different results from BLAKE2b. Is that normal?
https://blake2.net/
Not related, but I am interested in your Cuckoo Cycle Bounty. Do you have any additional requirements apart from those listed here:
is is ready to go for test ?
Glad to hear you’re taking an interest in Cuckoo Cycle, nobody!
The listed requirements should suffice, but I haven’t really thought about the use of assembler. Ideally, that would be limited to a few small fragments. Currently, the vast majority of runtime is spent in just a few dozen lines of C code, and those should be the only places where assembly can make a big difference.
If you suspect that your claim would raise additional issues, then we can discuss them beforehand.
xenoncat has generously made his AVX2 blake2b implementation available through C bindings. I’m busy integrating it into my solver.
Initial testing suggest a speed boost from
4.5 Sol/s to 5.8 Sol/s
but I need to work out some kinks, since solutions currently differ…