Pages:
Author

Topic: [ANN] ccminer 2.3 - opensource - GPL (tpruvot) (Read 500257 times)

newbie
Activity: 79
Merit: 0
http://ccminer.org/img/ccminer-banner.png

Welcome to the discussion thread for my ccminer fork.

It contains most algorithms, and was adapted to be usable on both linux and windows.
My releases are generally tuned with the Geforce GTX 750Ti, which was, and still is a good reference for tests (Linux + Windows) and has less hashrate drop in activity (unlike the 9xx and pascal series).

For a comprehensive list of the algorithms supported as well as details about the various configuration parameters, please check the ReadMe file.

Direct links
Windows Binaries : https://github.com/tpruvot/ccminer/releases
Source Code : https://github.com/tpruvot/ccminer
Linux, read first : https://github.com/tpruvot/ccminer/wiki/Compatibility
Sample Command Line : ccminer -a bitcore -o stratum+tcp://yiimp.eu:3556 -u 1Hpjgz8i4aRdnmLXm9Eri8fFgje2dA9BaQ -p c=BTX


http://cryptomining-blog.com/wp-content/uploads/2017/03/ccminer-20-tpruvot-580x293.jpg


void hashx7(void *state, const void *input, uint64_t timestamp)
{
    uint32_t _ALIGN(64) hash[7][16];
    uint32_t *hash0 = hash[0];
    uint32_t *hash1 = hash[1];
    uint32_t *hash2 = hash[2];
    uint32_t *hash3 = hash[3];
    uint32_t *hash4 = hash[4];
    uint32_t *hash5 = hash[5];
    uint32_t *hash6 = hash[6];
   
    x7_context_overlay ctx;

    // Blake512
    sph_blake512_init(&ctx.blake);
    sph_blake512(&ctx.blake, ×tamp, sizeof(timestamp));
    sph_blake512(&ctx.blake, input, 80);
    sph_blake512_close(&ctx.blake, hash0);   

    // BMW512
    sph_bmw512_init(&ctx.bmw);
    sph_bmw512(&ctx.bmw, hash0, 64);
    sph_bmw512_close(&ctx.bmw, hash1);

    // XOR with hash0
    for (int i = 0; i < 64; ++i) {
        hash1 ^= hash0;
    }

    // groestl   
#if defined(__AES__)
    groestl512_full(&ctx.groestl, (char*)hash2, (const char*)hash1, 512);
#else
    sph_groestl512_init(&ctx.groestl);
    sph_groestl512(&ctx.groestl, hash1, 64);
    sph_groestl512_close(&ctx.groestl, hash2);
#endif

    // Skein512
    sph_skein512_init(&ctx.skein);
    sph_skein512(&ctx.skein, hash2, 64);
    sph_skein512_close(&ctx.skein, hash3);

    // XOR with hash2
    for (int i = 0; i < 64; ++i) {
        hash3 ^= hash2;
    }

    // Keccak512
    sph_keccak512_init(&ctx.keccak);
    sph_keccak512(&ctx.keccak, hash3, 64);
    sph_keccak512_close(&ctx.keccak, hash4);

#if defined(__aarch64__)
    sph_luffa512_init(&ctx.luffa);
    sph_luffa512(&ctx.luffa, hash4, 64);
    sph_luffa512_close(&ctx.luffa, hash5);
#else
    luffa_full(&ctx.luffa, hash5, 512, hash4, 64);
#endif

#if defined(__AES__)
    echo_full(&ctx.echo, (BitSequence *)hash6, 512, (const BitSequence *)hash5, 64);
#else
    sph_echo512_init(&ctx.echo);
    sph_echo512(&ctx.echo, hash5, 64);
    sph_echo512_close(&ctx.echo, hash6);
#endif

    // XOR with hash5
    for (int i = 0; i < 64; ++i) {
        hash6 ^= hash5;
    }

    memcpy(state, hash6, 32);   
}

Hello! How does ccminer handle the algorithm with timestamp in sph_blake512(&ctx.blake, ×tamp, sizeof(timestamp)); algorithm?

All other algorithm problems have been solved, but I don't know how to deal with the timestamp.

newbie
Activity: 79
Merit: 0
http://ccminer.org/img/ccminer-banner.png

Welcome to the discussion thread for my ccminer fork.

It contains most algorithms, and was adapted to be usable on both linux and windows.
My releases are generally tuned with the Geforce GTX 750Ti, which was, and still is a good reference for tests (Linux + Windows) and has less hashrate drop in activity (unlike the 9xx and pascal series).

For a comprehensive list of the algorithms supported as well as details about the various configuration parameters, please check the ReadMe file.

Direct links
Windows Binaries : https://github.com/tpruvot/ccminer/releases
Source Code : https://github.com/tpruvot/ccminer
Linux, read first : https://github.com/tpruvot/ccminer/wiki/Compatibility
Sample Command Line : ccminer -a bitcore -o stratum+tcp://yiimp.eu:3556 -u 1Hpjgz8i4aRdnmLXm9Eri8fFgje2dA9BaQ -p c=BTX


http://cryptomining-blog.com/wp-content/uploads/2017/03/ccminer-20-tpruvot-580x293.jpg


void hashx7(void *state, const void *input, uint64_t timestamp)
{
    uint32_t _ALIGN(64) hash[7][16];
    uint32_t *hash0 = hash[0];
    uint32_t *hash1 = hash[1];
    uint32_t *hash2 = hash[2];
    uint32_t *hash3 = hash[3];
    uint32_t *hash4 = hash[4];
    uint32_t *hash5 = hash[5];
    uint32_t *hash6 = hash[6];
   
    x7_context_overlay ctx;

    // Blake512
    sph_blake512_init(&ctx.blake);
    sph_blake512(&ctx.blake, ×tamp, sizeof(timestamp));
    sph_blake512(&ctx.blake, input, 80);
    sph_blake512_close(&ctx.blake, hash0);   

    // BMW512
    sph_bmw512_init(&ctx.bmw);
    sph_bmw512(&ctx.bmw, hash0, 64);
    sph_bmw512_close(&ctx.bmw, hash1);

    // XOR with hash0
    for (int i = 0; i < 64; ++i) {
        hash1 ^= hash0;
    }

    // groestl   
#if defined(__AES__)
    groestl512_full(&ctx.groestl, (char*)hash2, (const char*)hash1, 512);
#else
    sph_groestl512_init(&ctx.groestl);
    sph_groestl512(&ctx.groestl, hash1, 64);
    sph_groestl512_close(&ctx.groestl, hash2);
#endif

    // Skein512
    sph_skein512_init(&ctx.skein);
    sph_skein512(&ctx.skein, hash2, 64);
    sph_skein512_close(&ctx.skein, hash3);

    // XOR with hash2
    for (int i = 0; i < 64; ++i) {
        hash3 ^= hash2;
    }

    // Keccak512
    sph_keccak512_init(&ctx.keccak);
    sph_keccak512(&ctx.keccak, hash3, 64);
    sph_keccak512_close(&ctx.keccak, hash4);

#if defined(__aarch64__)
    sph_luffa512_init(&ctx.luffa);
    sph_luffa512(&ctx.luffa, hash4, 64);
    sph_luffa512_close(&ctx.luffa, hash5);
#else
    luffa_full(&ctx.luffa, hash5, 512, hash4, 64);
#endif

#if defined(__AES__)
    echo_full(&ctx.echo, (BitSequence *)hash6, 512, (const BitSequence *)hash5, 64);
#else
    sph_echo512_init(&ctx.echo);
    sph_echo512(&ctx.echo, hash5, 64);
    sph_echo512_close(&ctx.echo, hash6);
#endif

    // XOR with hash5
    for (int i = 0; i < 64; ++i) {
        hash6 ^= hash5;
    }

    memcpy(state, hash6, 32);   
}

Hello! How does ccminer handle the algorithm with timestamp in sph_blake512(&ctx.blake, ×tamp, sizeof(timestamp)); algorithm?
full member
Activity: 1424
Merit: 225
For anyone who's interested ccminer no longer compiles on Ubuntu-21.10 (Cuda 11, GCC 11).

Cuda 11 requires all lines referencing sm_30 or sm_35 be removed from Makefile.am.

GCC 11 requires a fix ported from cpuminer and applied to 2 files: sph/blake2s.c, equi/blake2/blake2bx.cpp
https://github.com/tpruvot/cpuminer-multi/commit/7411020cefb5809202dd0db346df947a4561db4b

newbie
Activity: 3
Merit: 0
Just checked with 1.7.4 - both x86 and x64 versions
same behaviour, telnet connects, on first jey pressed exits to prompt :S
I tried changing port to 4069. no change

Tried running as admin/normal - same
legendary
Activity: 1797
Merit: 1028
This miner is not updated anymore. I did a quick test of the x17 algo on my RTX 2060 SUPER. The latest ccminer 2.3 does around 9MHASH,The popular alexis 1.0.0 fork is doing around 12 MHASH My free opensource suprminer/SPMOD-GIT is doing 19MHASH. The private miner Enemy/T-rex & co is doing around 26MHASH.
But it all doesn't really matter because there is no profit in 26MHASH.

Is X17 FPGA/ASIC minable, or is there a faster Private GPU kernel out there that harvest all of the profit?

X17 IS FPGA MINABLE--

There are a couple posts, in sequence, on the ZergPool thread.  Here is the link:

  Link to ZergPool thread- https://bitcointalksearch.org/topic/m.52643630

FPGA mining is a real thumbscrew for GPU miners.  A short while ago, $50/day for a single FPGA on a few algos, but now just $1-3/day at best.  And, FPGAs cost 3X-5X as much as a GPU rig of 6 or more cards.

--scryptr
sp_
legendary
Activity: 2954
Merit: 1087
Team Black developer
This miner is not updated anymore. I did a quick test of the x17 algo on my RTX 2060 SUPER. The latest ccminer 2.3 does around 9MHASH,The popular alexis 1.0.0 fork is doing around 12 MHASH My free opensource suprminer/SPMOD-GIT is doing 19MHASH. The private miner Enemy/T-rex & co is doing around 26MHASH.
But it all doesn't really matter because there is no profit in 26MHASH.

Is X17 FPGA/ASIC minable, or is there a faster Private GPU kernel out there that harvest all of the profit?
sr. member
Activity: 540
Merit: 251
Then switch back to SPDR ( coin without roots) BIG trouble.

Edit: phi2-lux now makes sense, it's just a workaround for phi2 with roots enabled for miners
that can't handle them dynamically.

Thank you kindly !
sr. member
Activity: 1092
Merit: 273
Any idea how to compile it on Ubuntu 19.04?  Will the dev update source code for compatibility?
legendary
Activity: 1470
Merit: 1114
Then switch back to SPDR ( coin without roots) BIG trouble.

Thanks, I should have realized that. I'll make the change in cpuminer-opt.

Edit: phi2-lux now makes sense, it's just a workaround for phi2 with roots enabled for miners
that can't handle them dynamically.
sr. member
Activity: 540
Merit: 251
The connection:
When mining SPDR ( coin without roots ) all ok
Then switch to LUX or GEX (coins with roots ) all ok roots are enabled in ccminer.
Then switch back to SPDR ( coin without roots) BIG trouble.
From this moment ccminer is still in enabled roots mode and cant produce valid shares anymore.

Therefore the "has roots" check needs to be performed on every received job and set to false by default.
I think that's the best approach?
legendary
Activity: 1470
Merit: 1114
To inside the ' work_decode ' function, so it gets checked on new jobs, to provide compatibility with profit switching.

Simple problem, simple fix but what's the connection to profit swicthing?
sr. member
Activity: 540
Merit: 251
When Mining Phi2 there's a "bug" in the software.

the use_roots flag for LUX and GEX is now being triggered and activated whenever a job contains a root parameter.
However the flag will never go back to false after this.

When using profit switching this causes a serious problem.

Please move the initial ' int use_roots = 0; '
To inside the ' work_decode ' function, so it gets checked on new jobs, to provide compatibility with profit switching.
legendary
Activity: 3164
Merit: 1003

Sorry for off topic but I think many here have mined Boolberry BBR. I thought you may like to know BBR to Zano swap. And yes BBR will still be supported after the swap ends July 30th 2019.  Smiley

http://coinswap.zano.org/

newbie
Activity: 5
Merit: 0
Hi, i have the following error mining on AWS EC2 instances, perhaps you have any advice for me?

[2019-06-10 19:28:04] Starting on stratum+tcp://x11.usa.nicehash.com:3336
[2019-06-10 19:28:04] 1 miner thread started, using 'x11' algorithm.
[2019-06-10 19:28:04] Stratum difficulty set to 64
[2019-06-10 19:28:04] x11 block 677682, diff 2549446.865
[2019-06-10 19:28:04] GPU #0: Intensity set to 19, 524288 cuda threads
[2019-06-10 19:28:05] GPU #0: aes_cpu_init invalid device symbol
[2019-06-10 19:28:06] GPU #0: aes_cpu_init invalid device symbol
[2019-06-10 19:28:07] GPU #0: quark_blake512_cpu_setBlock_80:318 invalid device symbol
Cuda error in func 'cuda_check_cpu_setTarget' at line 41 : invalid device symbol.
member
Activity: 653
Merit: 11
Hi. Will you add the SINOVATE in your pool and algo X25X.
Thanks.
hero member
Activity: 723
Merit: 501
i just wondered if anyone seen this issue or possible bug. Ok so i set up 3 wallets to do a time limited rotate of the wallets and i set time up with a max dif.  Maybe i am doing
something wrong i have tried in both windows and in linux.

Time-limit is the only one that exits, the others like max-diff, max-temp just wait at idle.

this is perfect and thats what i am looking for. A few months ago i was using the time-limit command and found
my gpus stuck on one wallet or pool for hours because the pool went down and i didnt figure out why it didnt move
on after 300 seconds until now because the time-limit has to mine that pool for 300 seconds or it wont switch.

you can easily recreate the issue by putting in a bad address or password in the first one and try yourself. it wont
go to the next wallet or pool til it mines that pool x seconds.
legendary
Activity: 1470
Merit: 1114
i just wondered if anyone seen this issue or possible bug. Ok so i set up 3 wallets to do a time limited rotate of the wallets and i set time up with a max dif.  Maybe i am doing
something wrong i have tried in both windows and in linux.

Time-limit is the only one that exits, the others like max-diff, max-temp just wait at idle.
hero member
Activity: 723
Merit: 501
i just wondered if anyone seen this issue or possible bug. Ok so i set up 3 wallets to do a time limited rotate of the wallets and i set time up with a max dif.  Maybe i am doing
something wrong i have tried in both windows and in linux.

here is my attempt with just max diff

:loop
ccminer-x64.exe -a skein -o http://192.168.1.215:9333 -u htc -p x -d 0 --cpu-priority=4 --max-dif=5.0
ccminer-x64.exe -a qubit -o http://192.168.1.215:14242 -u htc -p x -d 0 --cpu-priority=4 --max-dif=25.0
ccminer-x64.exe -a myr-gr -o http://192.1681.215:9335 -u htc -p x -d 0 --cpu-priority=4 --max-dif=5.0
GOTO loop
pause

it wont move off the first one at all and thinking i would mix in time limit to see if it would wait 180 seconds and go to the next one every 3 min

:loop
ccminer-x64.exe -a skein -o http://192.168.1.215:9333 -u htc -p x -d 0 --cpu-priority=4 --max-dif=5.0 --time-limit=180
ccminer-x64.exe -a qubit -o http://192.168.1.215:14242 -u htc -p x -d 0 --cpu-priority=4 --max-dif=25.0 --time-limit=180
ccminer-x64.exe -a myr-gr -o http://192.1681.215:9335 -u htc -p x -d 0 --cpu-priority=4 --max-dif=5.0 --time-limit=180
GOTO loop
pause

it wont move cause the miner didnt mine 3 minutes is what i am seeing.
If i runn with the --time-limit=180 command behind each one only it rotates thru them then goes back to the top one no issue.
newbie
Activity: 1
Merit: 0
This is what I get when running ccminer, it recognizes my gpu and even gives a hashrate, however it also says there is no kernel image available for execution on the device. Should I be concerned? I've read posts elsewhere about similar issues, but none of these were detecting the gpu. The other posts mentioned setting the cuda architecture to the proper one, but I cannot seem to grasp how that is done. I'm running Ubuntu 18.04 and cuda 9.1 with a GeForce GT520.

[2019-05-14 15:13:41] Starting on stratum+tcp://vtc.coinfoundry.org:3096
[2019-05-14 15:13:41] 1 miner thread started, using 'lyra2v3' algorithm.
[2019-05-14 15:13:41] Stratum difficulty set to 15 (0.05859)
[2019-05-14 15:13:41] GPU #0: Intensity set to 18, 262144 cuda threads
[2019-05-14 15:13:43] GPU #0: no kernel image is available for execution on the device
[2019-05-14 15:14:26] GPU #0: GeForce GT 520, 2777.44 kH/s
[2019-05-14 15:14:27] GPU #0: no kernel image is available for execution on the device
[2019-05-14 15:15:29] GPU #0: GeForce GT 520, 2704.37 kH/s
[2019-05-14 15:15:29] Stratum difficulty set to 14 (0.05469)
[2019-05-14 15:15:29] GPU #0: no kernel image is available for execution on the device
[2019-05-14 15:16:29] GPU #0: GeForce GT 520, 2729.74 kH/s
[2019-05-14 15:16:29] GPU #0: no kernel image is available for execution on the device
[2019-05-14 15:17:25] Stratum difficulty set to 13 (0.05078)
[2019-05-14 15:17:31] GPU #0: GeForce GT 520, 2637.25 kH/s
[2019-05-14 15:17:31] GPU #0: no kernel image is available for execution on the device
[2019-05-14 15:18:31] GPU #0: GeForce GT 520, 2633.14 kH/s
[2019-05-14 15:18:32] Stratum difficulty set to 12 (0.04688)
[2019-05-14 15:18:32] GPU #0: no kernel image is available for execution on the device
[2019-05-14 15:19:31] GPU #0: GeForce GT 520, 2673.43 kH/s
[2019-05-14 15:19:32] GPU #0: no kernel image is available for execution on the device
[2019-05-14 15:20:31] GPU #0: GeForce GT 520, 2698.43 kH/s
[2019-05-14 15:20:32] Stratum difficulty set to 11 (0.04297)
[2019-05-14 15:20:32] GPU #0: no kernel image is available for execution on the device
[2019-05-14 15:21:32] GPU #0: GeForce GT 520, 2684.36 kH/s
[2019-05-14 15:21:33] Stratum difficulty set to 10 (0.03906)
[2019-05-14 15:21:33] GPU #0: no kernel image is available for execution on the device
[2019-05-14 15:22:33] GPU #0: GeForce GT 520, 2657.94 kH/s
[2019-05-14 15:22:33] GPU #0: no kernel image is available for execution on the device
[2019-05-14 15:23:08] Stratum difficulty set to 9 (0.03516)
[2019-05-14 15:23:08] lyra2v3 block 1138796, diff 25016.611
[2019-05-14 15:23:08] GPU #0: no kernel image is available for execution on the device
copper member
Activity: 970
Merit: 287
Per aspera ad astra
Thanks for the input Ilya, official ccminer is available for download at http://ccminer.org/

And don’t forget that it was, is and will be opensource, thanks to Epsylon3 and other contributors.
Pages:
Jump to: