1
0
mirror of https://github.com/GOSTSec/ccminer synced 2025-01-13 08:17:53 +00:00
Commit Graph

257 Commits

Author SHA1 Message Date
Tanguy Pruvot
838f108dd4 decred: last vote bit should not be changed 2016-04-16 02:44:50 +02:00
Tanguy Pruvot
446e1abd66 decred: keep first protocol without the vote arg
argh... suprnova again...
2016-04-06 18:13:54 +02:00
alexis78
be1f64446a vanilla: sync with MrM4D, remove SSE2 midstate computation
was not useful and hard to read...
2016-03-23 11:39:34 +01:00
Tanguy Pruvot
054af6526c decred: link the --vote parameter
without param or 0 = no vote, valid choices will start to 1..

stratum + getwork
2016-03-19 09:27:03 +01:00
Tanguy Pruvot
5a69056ee5 blake2s cleanup 2016-03-13 19:36:01 +01:00
Tanguy Pruvot
7ffe65c262 blake2s algo
Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
2016-03-13 16:50:32 +01:00
Tanguy Pruvot
24f452adf6 decred: missed --help 2016-03-02 00:11:26 +01:00
Tanguy Pruvot
d58490911a decred: remove some useless double flip 2016-02-28 18:19:32 +01:00
Tanguy Pruvot
35738cec23 api: add stales and pools algo/name
+ remove hardcoded stales check on suprnova...
2016-02-27 17:48:42 +01:00
Tanguy Pruvot
e1fd687b9b count pool stales + suprnova workaround
there was a weird job id problem not seen on yiimp stratum
2016-02-24 01:33:55 +01:00
Tanguy Pruvot
099195e39d decred: use given extradata... 2016-02-21 14:58:31 +01:00
Tanguy Pruvot
f2f11b2331 getwork: fix reggression with normal work size 2016-02-20 19:41:26 +01:00
Tanguy Pruvot
7a62bf37fa decred: a bit more clean... 2016-02-19 18:06:24 +01:00
Tanguy Pruvot
a823cca7f9 decred: allow custom extranonce sizes
the extranonce is already placed after header in job.coinbase
2016-02-19 15:52:17 +01:00
Tanguy Pruvot
4944e1a098 mrM4D vnl, with some changes 2016-02-19 11:31:00 +01:00
Tanguy Pruvot
7c9ec8629f decred: handle a second nonce 2016-02-18 22:47:03 +01:00
Tanguy Pruvot
6cd53a2305 decred: quick fix for low net diff (testnet) 2016-02-18 12:36:56 +01:00
Tanguy Pruvot
b0617ba0fc Revert "decred: prepare full stratum support"
This reverts commit 4e769915d8.

proper v1.7.3 for yiimp
2016-02-18 11:22:50 +01:00
Tanguy Pruvot
4e769915d8 decred: prepare full stratum support 2016-02-15 08:46:32 +01:00
Tanguy Pruvot
7d4c48d1d8 1.7.3 stratum test 2016-02-13 16:14:57 +01:00
Tanguy Pruvot
7fd2df5ba9 stratum: missing bloc height notif + range 2016-02-12 21:32:22 +01:00
Tanguy Pruvot
9bb9af49b2 decred: stratum tests with extranonce field
This implementation doesnt compute the merkle root, but allow
to mine on yiimp with the help of decred extradata fields.

Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
2016-02-12 14:45:54 +01:00
Tanguy Pruvot
fc27c25436 windows builds cleanup 2016-02-11 07:57:44 +01:00
Tanguy Pruvot
6e95407dcf decred algo for longpoll/getwork
Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
2016-02-11 07:10:46 +01:00
xCoreDev
2e16d00f63 vanilla algo (Blake256 8 rounds - double sha256) 2016-01-26 19:01:42 +01:00
Tanguy Pruvot
e75b26feb4 sib coin algo (X11 + Streebog)
Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
2015-12-31 19:11:48 +01:00
Tanguy Pruvot
a4404bc325 Add advanced resume options for conditional mining
only available for single pool, in multi, max-xxx rotates the pool
2015-12-18 19:48:52 +01:00
Tanguy Pruvot
be73cd1ae0 improve the device mapping and a possible segfault
when using -n, work_restart array was not allocated
2015-12-03 15:03:19 +01:00
Tanguy Pruvot
e4476a5eee reduce crashes on debug tests 2015-11-06 19:40:14 +01:00
Tanguy Pruvot
2247605d23 quark: add support for SM 2 devices
todo: use nonce vectors for the second branch

GPU #0: Gigabyte GTX 460, 261.26 kH/s
accepted: 2/2 (diff 0.046), 254.36 kH/s yay!!!

Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
2015-11-06 04:10:06 +01:00
Tanguy Pruvot
21115b7fc6 scrypt: link texture-cache parameter 2015-11-05 17:06:35 +01:00
Tanguy Pruvot
e50556b637 various changes, cleanup for the release
small fixes to handle better the multi thread per gpu

explicitly report than quark is not compatible with SM 2.1 (compact shuffle)
2015-11-04 14:59:59 +01:00
Tanguy Pruvot
1e3db41a8d multialgo: clear hashrate stats on switch 2015-11-02 19:05:43 +01:00
Tanguy Pruvot
e9b88b45e4 prepare the 1.7 release 2015-11-02 17:52:24 +01:00
Tanguy Pruvot
d3e2088398 basic pool algo switch (without free barrier)
not really proper but should works for 2 "small" algos.

just put the "algo" param in each pools config
2015-11-02 17:52:24 +01:00
Tanguy Pruvot
113e22de2e blake: prevent empty scan ranges with multiple gpus
in some cases, an empty scan range was possible in benchmark..
2015-11-01 22:14:17 +01:00
Tanguy Pruvot
61ff92b5b4 never interrupt global benchmark with found nonces
fix some algo weird hashrates (like blake)
and reset device between algos, for better accuracy

but this reset doesnt seems enough to bench all algos correctly...

to test on linux, could be a driver issue...

heavy: fix first alloc and indent with tabs...
2015-11-01 21:12:50 +01:00
Tanguy Pruvot
47f309ffb4 ifdef some unused kernels on SM5+
no need to build both (mine and sm variants)

and put global hashrate to 0 while waiting...
2015-10-28 07:25:52 +01:00
Tanguy Pruvot
2673b3aeff stratum: hide timeout warnings while waiting
this timeout is not important, we reconnect after
2015-10-26 09:17:00 +01:00
Tanguy Pruvot
e12d666d36 pool switch: add thr_id param to handle a future barrier
Switching to a pool with a different algo will require a barrier
to free ressources, like what was made in the global benchmark.

add also the algo in pool structure...
2015-10-24 09:58:25 +02:00
Tanguy Pruvot
dec6dbed77 api: add best share diff and last share time
best share diff require --show-diff

shown in the "pool" command
2015-10-22 15:11:16 +02:00
Tanguy Pruvot
e90ade048a ndevs: get vendor names on windows too
ccminer -n 2>NUL

GPU #0: SM 5.2 GeForce GTX 970
GPU #1: SM 5.0 Gigabyte GTX 750 Ti
GPU #2: SM 5.2 ASUS GTX 970

note: nvml destroy is made in proper_exit function
2015-10-22 13:36:46 +02:00
Tanguy Pruvot
59a6cd133b nvapi: x86 can also get sub vendor ids 2015-10-22 12:29:03 +02:00
Tanguy Pruvot
c3d10db873 algos: move cmdline algo/alias parser in a func 2015-10-15 08:49:40 +02:00
Tanguy Pruvot
5a08c21355 diff: store solved blocs count, update the api
Also show the real target diff on pools for the algos with a factor (lyra)

require the --show-diff parameter, may be used as default in the final 1.7
2015-10-14 20:21:14 +02:00
Tanguy Pruvot
9dfa757dc7 warn on cuda errors + various small changes
The full benchmark can now be launched with "ccminer --benchmark"

add a new helper function which log a warning with last cuda error
(not shown with the quiet option) : CUDA_LOG_ERROR();
it can be used where miner.h is included (.c/.cpp/.cu)

fix x14 (in ccminer.cpp), a break was missing in switch..case
2015-10-12 08:46:13 +02:00
Tanguy Pruvot
8fbfe2cfda add gpulog() function helper, simple and multi-threads
when using multiple cpu threads per gpu, use the T prefix, ex:

[2015-10-11 09:52:49] GPU #0: app clocks set to P0 (3600/1228)
 vs
[2015-10-11 09:52:51] GPU T0: MSI GTX 960, 5953.35 kH/s

Only thr_id is required, the function take care of the dev id
2015-10-11 10:46:05 +02:00
Tanguy Pruvot
c6dcc5e5cf benchmark: show mem and default throughput in results
and prepare a new function to get the default intensity

also, take care of multiple threads per gpu...
2015-10-11 04:38:28 +02:00
Tanguy Pruvot
8db5a0bc9e blake: change dynamic round system
blakecoin was conflicting with lyra2, set the rounds more properly
2015-10-11 03:46:30 +02:00
Tanguy Pruvot
ab5cc7162e refactor: create bench.cpp and algos.h
Also enhance multi-thread benchmark synchro. with pthread barriers
2015-10-11 00:10:27 +02:00
Tanguy Pruvot
c2214091ae benchmark: free last memory leaks on algo switch
remains my original lyra2 implementation to fix... (cuda_lyra2.cu)

I guess some kind of memory overflow force the driver to allocate
memory... but was unable to free it without device reset.
2015-10-10 02:15:32 +02:00
Tanguy Pruvot
4e1e03b891 benchmark: store all algos results + cuda fixes
Note: lyra2, lyra2v2 and script seems to have problems
to coexist with other algos... to run after some of them...

moved lyra2 first and skip scrypt/jane for the moment...

Only stored in memory for now.. to display a table after the bench

ccminer -a auto --benchmark

Results may be exported later to a json file...
2015-10-09 02:07:08 +02:00
Tanguy Pruvot
934555994d benchmark: allow -a auto to bench all algos at once 2015-10-08 21:41:20 +02:00
Tanguy Pruvot
42789f1a0d whirlpool: allow stratum compat with new coins
make a difference between whirlpool and whirlcoin algos (stratum)

Look like the old SHA merkleroot method doesnt work on recent coins

Doesn't affect solo mining, only pools using stratum+tcp:// protocol
2015-10-07 02:26:17 +00:00
Tanguy Pruvot
5f12943de5 whirlpool: add algo free function + vstudio 2015-10-06 23:53:03 +02:00
Tanguy Pruvot
b641bfdf8b diff: rename functions like cpuminer-multi
more proper, intuitive...
2015-10-06 23:37:13 +02:00
Tanguy Pruvot
3f589cc4db restore the whirlpool algo 2015-10-06 23:37:07 +02:00
Tanguy Pruvot
2ebcd1fbd5 neoscrypt: handle both getwork data sizes FTC/ORB
only affect solo mining, this patch should handle more weird cases

also set getblocktemplate param type to an empty object (ORB)
2015-09-29 13:00:14 +02:00
Tanguy Pruvot
8fb92415fb stratum: prevent multiple bloc notifications on yaamp
yaamp always notify clean jobs,
was not correct for my "new bloc" detection system...
2015-09-26 10:15:52 +02:00
Tanguy Pruvot
e1c4b3042c algos: add functions to free allocated resources
Will be used later for algo switching

not really tested yet...
2015-09-25 07:51:57 +02:00
Tanguy Pruvot
8ec5dd7d8e Handle the getwork typo in neoscrypt wallets
allow solo mining neoscrypt coins... (FTC/UFO)
2015-09-24 20:53:17 +02:00
Tanguy Pruvot
ec054db317 Show shares diff on longpoll pools too
and remove unused remains of old difficulty functions
2015-09-24 13:23:24 +02:00
Tanguy Pruvot
41707760f5 stratum: force exit on pool auth failure
the miner was stuck instead of exiting after the retries...
2015-09-24 11:31:20 +02:00
Tanguy Pruvot
fade2b74b5 diff: cleanup after windows test 2015-09-24 03:57:12 +02:00
Tanguy Pruvot
5308898d1c start v1.7, apply new prototypes to all algos 2015-09-23 15:42:17 +02:00
Tanguy Pruvot
4babf37256 Add --show-diff parameter and fix pool net diff
which display submitted block and net difficulty and is able
to detect shares above net diff (solved blocs)

Note: only made on lyra2v2 and zr5 algos

TODO: compute the found diff on all algos...
require changes in all scan hash "kernel" function parameters

to be continued...
2015-09-23 14:44:59 +02:00
Tanguy Pruvot
cd64f9b0e7 Add a new cuda-schedule parameter
0: cudaDeviceScheduleAuto
1: cudaDeviceScheduleSpin
2: cudaDeviceScheduleYield
4: cudaDeviceScheduleBlockingSync

Also set the best one (4) for luffa algo by default...
2015-09-17 23:45:03 +02:00
Tanguy Pruvot
6e64383b32 klaus small fixes 2015-09-05 20:16:24 +02:00
Tanguy Pruvot
9a13624c2e check abort_flag in threads loops
This flag was added recently (scrypt) from cudaminer code,
and i missed some...

and prevent multiple calls to proper_exit(), one is enough...
2015-08-24 13:33:03 +02:00
Tanguy Pruvot
629d987177 Allow to load remote config files with curl
different samples of use:

  ccminer -c http://127.0.0.1/ccminer.json

or dynamically from a web application :
  ccminer -c http://127.0.0.1/ccminer/config.php?h=linux

Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
2015-08-24 08:44:34 +02:00
Tanguy Pruvot
64e997e9d6 prepare release 1.6.6 2015-08-22 17:33:26 +02:00
Tanguy Pruvot
01f3183c31 bmw algo for MDT, with midstate
which could be extracted from json too

replace a satcoin by another one ;)

Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
2015-08-22 15:01:51 +02:00
Tanguy Pruvot
e3548f46f3 drop animecoin support
no more really minable... just minable in french
2015-08-22 12:35:22 +02:00
Tanguy Pruvot
736f916da3 Restore default timeout (300s) for normal use
Was only useful to reduce pool switching problems but
some pools require a longer value.
2015-08-22 12:30:30 +02:00
Tanguy Pruvot
c9ef0b6b39 affinity: allow more than 8 cores values (and hexa) 2015-08-22 12:30:30 +02:00
Tanguy Pruvot
53cd591956 lyra2v2, bmw256 and cubehash256 cleanup + diff fix 2015-08-18 11:10:58 +02:00
Tanguy Pruvot
4b04ca8027 lyra2v2: aliases and readme 2015-08-18 09:27:30 +02:00
Tanguy Pruvot
d4e191610e Import and adapt lyra2v2
not tested on windows and with SM <= 5
2015-08-18 09:27:11 +02:00
Tanguy Pruvot
3788fef9fd Restore whirlpoolx algo 2015-08-15 06:53:40 +02:00
Tanguy Pruvot
21630d5fbc affinity: do not default to win32 2015-07-25 06:47:22 +02:00
Tanguy Pruvot
e2f73614c0 link the no-extranonce option to the cmdline 2015-07-22 01:19:49 +02:00
Tanguy Pruvot
d923f0c1b2 solo: improve getmininginfo 2015-07-21 13:17:24 +02:00
Tanguy Pruvot
c5df142124 Add c11 algo (x11 variant)
Used by Chaincoin and Flaxscript
2015-06-29 11:46:16 +02:00
Tanguy Pruvot
15293d063f remove pluck algo
Supcoin seems.... dead and the algo was not supported on all devices
2015-06-28 20:48:23 +02:00
Tanguy Pruvot
25a78c96b5 nvml: allow to keep modified clocks + vendors
--keep-clocks option prevent reset clocks on exit...
2015-06-25 14:21:25 +02:00
Tanguy Pruvot
7c5087d01c nvml: add --plimit and --pstate parameters
--pstate 0 is an alternative to clocks values to set the device in P0
mode, 1 will set appl. clocks to default P1 clocks, 2 to default P2..

--plimit 150W really works on the 9xx and allow to limit/reduce the gpu usage

Note: nvml interface is only available on linux and windows x64

Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
2015-06-24 10:35:34 +02:00
Tanguy Pruvot
f73f5f6a2e nvml: use the right nvmlDeviceGetPciInfo_v2 api
so... pciutils branch is no more required on windows :p
2015-06-23 14:38:12 +02:00
Tanguy Pruvot
7661f73317 prepare the 1.6.5 release 2015-06-23 05:42:06 +02:00
Tanguy Pruvot
cb9d51c026 x64: link nvml api to allow app. clocks and P0
_WIN32 is also defined on x64 builds...

+ fix compat/getopt dos2unix (there was mixed CRLF)
2015-06-23 05:24:18 +02:00
Tanguy Pruvot
9aac7ca713 simplify diff factor and multiplier 2015-06-19 02:02:59 +02:00
Tanguy Pruvot
576884b199 refactor: move pool functions in pools.cpp
ccminer.cpp begins to be too big...
2015-06-18 04:44:52 +02:00
Tanguy Pruvot
79ee0ec264 zr5: some pok cleanup...
rename the var and only show warnings with --debug
2015-06-13 04:41:18 +02:00
Tanguy Pruvot
2907a7c678 zr5: add support for pok mining (getwork)
I dont store txs on biggest transactions to reduce memory usage.

In this case, the pok bool is not enabled for the bloc...

Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
2015-06-12 08:24:50 +02:00
Tanguy Pruvot
39238f077d diff: import bitcoin bignum class for conversions
BIGNUM is defined in OpenSSL...
2015-06-11 00:03:19 +02:00
Tanguy Pruvot
5636e2be5e remove double reference to luffa algo
doomcoin is dead but the luffa algo is still used (Joincoin)..

keep doom as alias for compat... rename functions...
2015-06-10 22:10:16 +02:00
Tanguy Pruvot
d25b42e41b Add diff-multiplier (-m) option
Remove -v and -m short params specific to heavycoin
 Add --diff-multiplier (-m) and rename --diff to --diff-factor (-f)

 --diff is kept for compat, but no more in help

This prevent using weird values like -f 0.0000125
2015-06-10 21:14:36 +02:00
Tanguy Pruvot
555504bd98 some changes related to wait stats 2015-06-05 20:36:48 +02:00
Tanguy Pruvot
2ea4635ef7 windows: scan time debug log was casted to 64bits int 2015-05-31 20:33:31 +02:00
Tanguy Pruvot
76b63b5a71 print the right cuda version 2015-05-31 19:00:20 +02:00
Tanguy Pruvot
e791039592 check work restart status in miner thread
also reduce a bit possible duplicate shares...
2015-05-30 13:20:35 +02:00