Tromp's solvers

ok so I just woke up… and I suppose your probably near bedtime now… I have 980ti and I will get them up and running. was going to wait wil my new board comes in. maybe i can rip apart an existing amd/windows rig now and get them going today. that will take me some time though as I have to put the heatsink back on the 980ti

quick question. . can you mine with GPU and CPU at the same time? if I am buying another CPU, can I get a good CPU so it can mine at the same time? and for a socket 1150 board, what would be the besat CPU for mining? E3 or i7?

and for system Ram, does that make any difference when mining with GPU? do I need a certain amount of system ram? 4G is ok? or is 8G or 16G better? if I choose to CPU and GPU mine on the same rig, then system ram will make a difference and I should have at least 8G , 16 G being better?

Thanks for your advice, I will help you out with testing 980ti, though compliling things from scratch sometimes gives me problems… i think i have only compiled from scratch twice with success. I will try to compile the miner now on my laptop with 780m… I might also be able to try other mobile cards.

I get an error when I try to make all in manjoaro
g++ -march=native -m64 -std=c++11 -Wall -Wno-deprecated-declarations -D_POSIX_C_SOURCE=200112L -O3 -pthread -DATOMIC equi_miner.cpp blake/blake2b.cpp -o equi
g++ -march=native -m64 -std=c++11 -Wall -Wno-deprecated-declarations -D_POSIX_C_SOURCE=200112L -O3 -pthread equi_miner.cpp blake/blake2b.cpp -o equi1
g++ -g equi.c blake/blake2b.cpp -o verify
time ./equi -h “” -n 0 -t 1 -s | grep ^Sol | ./verify -h “” -n 0
Verifying size 512 proof for equi(“”,0)
Verified
Verified
Verified

real 0m0.898s
user 0m0.867s
sys 0m0.030s
g++ -g -DLOGSPARK -DSPARKSCALE=11 equi_miner.cpp blake/blake2b.cpp -pthread -o equi1g
time ./equi1g
make: time: Command not found
make: *** [Makefile:44: spark] Error 127

what do you recommend I do?

can i replace time in the makeall file with eval time?

when I do that i get:
++ -march=native -m64 -std=c++11 -Wall -Wno-deprecated-declarations -D_POSIX_C_SOURCE=200112L -O3 -pthread -DATOMIC equi_miner.cpp blake/blake2b.cpp -o equi
g++ -march=native -m64 -std=c++11 -Wall -Wno-deprecated-declarations -D_POSIX_C_SOURCE=200112L -O3 -pthread equi_miner.cpp blake/blake2b.cpp -o equi1
g++ -g equi.c blake/blake2b.cpp -o verify
eval time ./equi -h “” -n 0 -t 1 -s | grep ^Sol | ./verify -h “” -n 0
Verifying size 512 proof for equi(“”,0)

real 0m0.838s
user 0m0.823s
sys 0m0.010s
FAILED due to nonzero xor
FAILED due to nonzero xor
g++ -g -DLOGSPARK -DSPARKSCALE=11 equi_miner.cpp blake/blake2b.cpp -pthread -o equi1g
eval time ./equi1g
Looking for wagner-tree on (“”,0) with 10 20-bit digits and 1 threads
Using 224MB of memory
Digit 0
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▃▄▆▇██▇▆▅▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 1 x0 b0 h0
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▃▅▆▇██▇▆▅▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 2 x0 b0 h0
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▄▆▇██▇▆▅▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 3 x0 b0 h0
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▄▆▇▇█▇▆▅▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 4 x0 b0 h10
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▃▄▆▇▇█▇▆▅▄▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 5 x0 b0 h23
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▄▅▆▇█▇▆▆▄▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 6 x0 b0 h76
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▄▆▇█▇▇▆▄▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 7 x0 b0 h166
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▃▅▆▇█▇▇▆▄▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 8 x0 b0 h344
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▄▅▆▇█▇▇▆▄▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 9
3 solutions
3 total solutions

real 0m2.730s
user 0m2.713s
sys 0m0.013s

You can just remove “time” from the Makefile if you don’t have it.
It just reports the time taken by the following command.

On an unrelated note:

Memory usage of my solver can be reduced to e.g.:

144MB, with about 0.15 % of solutions discarded, or

128MB, with about 3% of solutions discarded

And negligible effect on runtime.

ok ill try that thanks, just testing on a noteboke now with 780m… if this works, ill change up a rig and stick in the 980ti

and I can use the CPU miner at the same time as the GPU miner? Thanks again

ok seems to have worked, whats the command to test now?

g++ -march=native -m64 -std=c++11 -Wall -Wno-deprecated-declarations -D_POSIX_C_SOURCE=200112L -O3 -pthread -DATOMIC equi_miner.cpp blake/blake2b.cpp -o equi
g++ -march=native -m64 -std=c++11 -Wall -Wno-deprecated-declarations -D_POSIX_C_SOURCE=200112L -O3 -pthread equi_miner.cpp blake/blake2b.cpp -o equi1
g++ -g equi.c blake/blake2b.cpp -o verify
./equi -h “” -n 0 -t 1 -s | grep ^Sol | ./verify -h “” -n 0
Verifying size 512 proof for equi(“”,0)
Verified
Verified
Verified
g++ -g -DLOGSPARK -DSPARKSCALE=11 equi_miner.cpp blake/blake2b.cpp -pthread -o equi1g
./equi1g
Looking for wagner-tree on (“”,0) with 10 20-bit digits and 1 threads
Using 224MB of memory
Digit 0
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▃▄▆▇██▇▆▅▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 1 x0 b0 h0
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▃▅▆▇██▇▆▅▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 2 x0 b0 h0
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▄▆▇██▇▆▅▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 3 x0 b0 h0
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▄▆▇▇█▇▆▅▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 4 x0 b0 h10
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▃▄▆▇▇█▇▆▅▄▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 5 x0 b0 h23
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▄▅▆▇█▇▆▆▄▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 6 x0 b0 h76
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▄▆▇█▇▇▆▄▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 7 x0 b0 h166
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▃▅▆▇█▇▇▆▄▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 8 x0 b0 h344
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▂▄▅▆▇█▇▇▆▄▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Digit 9
3 solutions
3 total solutions

Hi, are you going to publish this?

Yes (open-sourcing it).
Preparing PullRequest to zcash git repository.

:heart_eyes: :heart_eyes::heart_eyes: [need to have more characters.]

I just made the under 144MB version the default.
This means you can easily run 4 instances and still use well under 600MB…

so without time, i dont see the sol/s?
but you are just interested in the total solutions anyway?
is there anyway to get it to show the sol/s?

I need to do a fresh install for the 980ti, so should I just stick with ubuntu? that will be able to makeall with time?

sorry, i don’t use make, cmake that often…
usually just use prebuilt pkgbuilds and aur

and im clueless with what you are saying about the 144MB etc.

If your OS doesn’t have any timing command, then maybe you can just print the time before and after running “equi1 -n 1000 -r 100” to work out the Sol/s …
in the worst case, use your stopwatch :slight_smile:

The 144MB has nothing to do with your post.

I just hit the wrong Reply button and can’t figure out how to edit the post
to remove you as the reply-to …

ok, so if i install ubuntu and use that, it should post the sol/s
ubuntu 16 is ok or should I use 14? or i can use the latest version of mint? cause honestly hate that ubuntu desktop.

eitherway your interested in the total solutions number that I got at the bottom, or you need the sol/s?

does that output for 780m help you is what I mean?

My solver doesn’t report Sol/s; only number of solutions.
So when you run the above with time, and get something like


Digit 7 x0 b0 h339
Digit 8 x0 b0 h688
Digit 9
2 solutions
188 total solutions

real 0m23.712s
user 2m37.732s
sys 0m0.260s

you can compute Sol/s with e.g.
$ bc -l
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty’.
188/23.712
7.92847503373819163292

to find 7.9 Sol/s

Created pull request with main zcash repo.

Waiting for review. @str4d

2 Likes

ok but i dont get those numbers because time is missing?
ill try on linux mint with the 980ti later today, should I do that?
otherwise im doing everything right? is that correct? thanks

Yes, you seem t have everything working except the time command.
Which any Linux distribution should fix for you…

Thanks for developing the zcash integration!

Btw, you may want to include the latest commits that fix the XFULL definition (accidentally changed after experiment), and save lots of memory.

Also note that the major reason for my own blake implementation is to make the blake2b_compress calls eager rather than lazy, which is needed to get an actual midstate for headers longer than 128 bytes…

1 Like

Currently I am working on integrating this solver into standalone miner.
Will try to integrate XFULL changes after completing cuda & standalone changes.

2 Likes

Sarath, This looks fantastic! … Cannot wait to try them both, the Cuda and the new improved CPU jobbie, pity i’ve got to work now :frowning:
Thanks a Million !!!
Put your BTC addr here for some tips !!!

It must be working…mined two blocks 6 minutes apart!

https://explorer.testnet.z.cash/block/002299e2f98735281e23df607ffe09148eb172d187b6daba9c203c897eeef841

https://explorer.testnet.z.cash/block/0020ae515132fe7e1f9df4515d410a2eb9616f4ad3dd05f88b614d459ba744aa