That's not what I said.
I know, but what am I wrong about? You're trolling. My answer was very clear. Your follow up question was just plain stupid.
|
|
|
So, is there no difference between Haswell and Sandybridge microarches for cryptonight algo and no sense to use different versions of miner for it (but only in case, when cpu not support aes)?
That's not what I said.
|
|
|
Dear Dev,
I tried to use cpuminer to mine xmr with my computer.
It shows:
[2017-03-23 13:23:08] Starting Stratum on stratum+tcp://xmr.crypto-pool.fr:3333 [2017-03-23 13:23:08] 24 miner threads started, using 'cryptonight' algorithm. [2017-03-23 13:23:09] API bind to port 4048 failed - trying again in 20sec [2017-03-23 13:23:11] Stratum difficulty set to 18000 [2017-03-23 13:23:15] CPU #6: 66 H, 18.39 H/s
Is it ok for API failed?
In my experience, is no problem if you don't want or need to control the miner remotely through the provided API interface. In your case, it seems you are mining with another instance of this same miner, or the original version, and you need to specify a new port for this instance. Use: --api-bind <other_port_number>
in your argument list and the problem will be solved. Correct.
|
|
|
Hello.
There are some problems with mining with cryptonight algorithm. In 3.3.6 version of miner on many CPU for mining was using AES and AVX instructions if available. But now, even when I launched cpuminer-aes-avx for Ivy/Sandy Bridge or cpuminer-aes-avx2 for Haswell and above, their are always using AES and SSE2 instructions. On i7 3770, on i7 4770, even on Xeon E5-1650 v3. There wasn't any cases when for mining was using AVX instruction in 3.6.0 version.
Is it normal? Or combination of AES and SSE2 instruction are more efficient then AES and AVX?
The algo features are hard coded by me as a guide to users. I changed the definition for cryptonight because there is no AVX or AVX2 code used by cryptonight. A Haswell won't perform significantly faster that a Sandybridge mining cryptonight but is faster on algos that do have AVX2 code.
|
|
|
damn, thanks for looking into it though, most profitable coins for cpu mining are either cryptonight or zoin/zcoin or something else/new
Did you try ccminer-tpruvot? It's coded differently and doesn't have the rpc2-login call in workio_thread.
|
|
|
with the workio_login thing commented out i get: [2017-03-18 23:28:23] 1 miner threads started, using 'cryptonight' algorithm. [2017-03-18 23:28:23] Tried to call rpc2 command before authentication [2017-03-18 23:28:23] getblocktemplate failed, falling back to getwork [2017-03-18 23:28:23] Tried to call rpc2 command before authentication [2017-03-18 23:28:23] json_rpc_call failed, retry after 10 seconds
i then commented out line 242 and got the same output as above i then uncommented the workio_login thingy and it went back to the initial output posted before rpc2_workio_login is called regardless of gbt or not. The login method isn't recongnized and skipping it results in no authentication. With no working model and no real understanding of the protocol I think I'm stuck.
|
|
|
Yeah, no login method, but I don't think it's GBT related. I found an intereting bit of code cpu-miner.c line 1264 if(jsonrpc_2 && !have_stratum) ok = rpc2_workio_login(curl); while (ok) {
Notice no "else" clause so no login attempt here for other algos. You could try commenting out the login to see what happens. I also looked at GBT code. I'm not sure now why I defaulted to disable GBT for RPC2. cpuminer-multi doesn't do it. You could try commenting that out in ago-gate-api.c line 242. I don't really expect either of these to fix it but it might eliminate some of the noise.
|
|
|
After thinking on what I've done, I can safely say that this is a viable Monero mining strategy for Ryzen 7 family of processors (8 cores / 16 threads, divided up into two CCXs of 4 cores / 8 threads each, and 8MB L3 cache each):
I think Ryzen 5 will be an excellent architecture for mining cryptonight due to it's L3 cache size and low price. The extra cores of the R7 aren't needed for cryptonight. The more compute bound algos may do better with R7, but they also do better with GPU.
|
|
|
What one needs to do is thus adding this new communications protocol to the miner and adjust it accordingly. This way the miner can solo mine this and similar coins without problem.
Thanks but the code already exists in the miner, it just hasn't been tested since I forked it. i get the following: felix@mobile:~/local projects/WebstormProjects/wallet-miner-agent$ bin/cpuminer -a cryptonight -t 3 -o http://10.1.1.173:41264 -DP
********** cpuminer-opt 3.6.0 *********** A CPU miner with multi algo support and optimized for CPUs with AES_NI and AVX extensions. BTC donation address: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT Forked from TPruvot's cpuminer-multi with credits to Lucas Jones, elmad, palmd, djm34, pooler, ig0tik3d, Wolf0, Jeff Garzik and Optiminer.
CPU: Intel(R) Core(TM) i3-4005U CPU @ 1.70GHz CPU features: SSE2 AES AVX AVX2 SW built on Mar 16 2017 with GCC 5.4.0 SW features: SSE2 AES AVX AVX2 Algo features: SSE2 AES Start mining with SSE2 AES
[2017-03-18 17:40:53] JSON protocol request: {"method": "login", "params": {"login": "", "pass": "", "agent": "cpuminer-opt/3.6.0"}, "id": 1}
* Rebuilt URL to: http://10.1.1.173:41264/ * Trying 10.1.1.173... * TCP_NODELAY set [2017-03-18 17:40:53] Binding thread 0 to cpu 0 (mask 1) [2017-03-18 17:40:53] Binding thread 1 to cpu 1 (mask 2) [2017-03-18 17:40:53] 3 miner threads started, using 'cryptonight' algorithm. [2017-03-18 17:40:53] Binding thread 2 to cpu 2 (mask 4) * Connected to 10.1.1.173 (10.1.1.173) port 41264 (#0) * Server auth using Basic with user '' > POST / HTTP/1.1 Host: 10.1.1.173:41264 Authorization: Basic Og== Accept: */* Accept-Encoding: deflate, gzip Content-Type: application/json Content-Length: 96 User-Agent: cpuminer-opt/3.6.0 X-Mining-Extensions: longpoll reject-reason Expect: 100-continue
* Done waiting for 100-continue < HTTP/1.1 200 OK < Content-Length: 77 < Server: CryptoNote-based HTTP server < * Connection #0 to host 10.1.1.173 left intact [2017-03-18 17:40:54] JSON protocol response: { "error": { "code": -32601, "message": "Method not found" }, "id": 1, "jsonrpc": "2.0" } [2017-03-18 17:40:54] JSON-RPC call failed: Method not found [2017-03-18 17:40:54] ...retry after 10 seconds ^C[2017-03-18 17:40:58] SIGINT received, exiting
Looks like a problem with longpoll, try --no-longpoll. edit: also try cpuminer-multi, if it works I can compare.
|
|
|
What one needs to do is thus adding this new communications protocol to the miner and adjust it accordingly. This way the miner can solo mine this and similar coins without problem.
Thanks but the code already exists in the miner, it just hasn't been tested since I forked it.
|
|
|
@ Felix
-u mustmatch coin conf -p as in coin conf too
one of the benefits is with coinbase adr, you dont need to have the wallet started (usually) try this pls and report us if it works for you
for me i have done so some time ago and it has worked
Cryptonight uses a different version of RPC and doesn't support GBT. Coinbase addr is not used for getwork.
|
|
|
No one has reported it not working.
|
|
|
hi joblo I install on Centos but have error: im processing command: make mv -f .deps/cpuminer-sysinfos.Tpo .deps/cpuminer-sysinfos.Po gcc -std=gnu99 -DHAVE_CONFIG_H -I. -Iyes/include -Iyes/include -fno-strict-aliasing -I./compat/jansson -I. -Iyes/include -Iyes/include -Wno-pointer-sign -Wno-pointer-to-int-cast -O3 -march=native -Iyes/include -Iyes/include -MT cpuminer-algo-gate-api.o -MD -MP -MF .deps/cpuminer-algo-gate-api.Tpo -c -o cpuminer-algo-gate-api.o `test -f 'algo-gate-api.c' || echo './'`algo-gate-api.c algo-gate-api.c: In function ‘register_algo_gate’: algo-gate-api.c:150: error: #pragma GCC diagnostic not allowed inside functions algo-gate-api.c:151: error: #pragma GCC diagnostic not allowed inside functions
algo-gate-api.c:211: error: #pragma GCC diagnostic not allowed inside functions make[2]: *** [cpuminer-algo-gate-api.o] Error 1 make[2]: Leaving directory `/root/cpuminer-opt-3.6.0' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/root/cpuminer-opt-3.6.0' make: *** [all] Error 2
What version of gcc are you using? It's not an error with gcc 4.8. You can work around it by deleting the #pragma directives causing the errors.
|
|
|
Hey guys! Is there any CPU miner built for Windows out there ? If yes, can you point me to it? Thanks!
Might be one here... https://github.com/1gh/cpuminer-cryptoniteI've considered adding it to cpuminer-opt but with Suprnova continuously threatening to drop it I didn't see much point. If this project picks up steam I make take another look but I don't see any easy optimization opportunities.
|
|
|
One short term possibility is to have sha256t use the openssl implemention if it has been optimized. That is something I can look into.
That was a bust, the openssl version is slower even though it includes the SHA extensions. I don't know if the sha instructions were actually used, performance suggests they were not.
|
|
|
I'm having a hard time finding information about the sha256 intrinsics. The only definitive statement I could find was it was introduced in Goldmont, but that's an Atom architecture. I found some documents discussing sha256 performance on Haswell but no clear statement about using HW acceleration. I also found a mention that it is supported in gcc 5 and above but I don't know if that applies to the Goldmont support or some previous implementation in the core CPUs. I never looked at sha256 because of the availability of ASICs. There is no ASIC yet for sh256t but it's trivial to implement. The next generation of ASICs is almost guaranteed to have it. I quick search found 4 different sha256 implementations in cpuminer-opt. There is SPH, the reference implementation used by many algos including sha256t. Skein uses an openssl implementation, hodl and yescrypt each have their own implementation. It's possible openssl has already implemented HW sha256 and would use it on capable CPUs. Even if the picture was clearer it would be a lot of work to develop a HW accelerated mining function for sha256 with limited benefit. Mining sha256d would still be useless with a CPU and CPU mining sha256t would become obsolete as soon as the next generation of ASICS becomes avaialble. None of the other algos that use sha256 have enough interest or support to pay for the development of a HW accelerated CPU mining function. One short term possibility is to have sha256t use the openssl implemention if it has been optimized. That is something I can look into.
|
|
|
Has anyone tried GBT with an address? yes, with address, failed
Has anyone tried --no-gbt? yes, failed
back to gbt tomorrow, next testing: 3.6 gbt I don't understand. If default works (try gbt, fall back to getwork) then --no-gbt should also work becasuse it goes directly to getwork without first trying gbt. I'm not surprised gbt doesn't work, it hasn't been tried before. 3.6.0 , getwork and gbt, BOTH tested to work when solo. Earlier either of those did not work no matter what you did. Cpuminer is fine now! Excellent!. Thanks again.
|
|
|
Has anyone tried GBT with an address? yes, with address, failed
Has anyone tried --no-gbt? yes, failed
back to gbt tomorrow, next testing: 3.6 gbt I don't understand. If default works (try gbt, fall back to getwork) then --no-gbt should also work becasuse it goes directly to getwork without first trying gbt. I'm not surprised gbt doesn't work, it hasn't been tried before.
|
|
|
I need some clarity on what test cases were run. AFAIK hexxodev was using default options which would result in an attempt to use GBT but fail due to lack of coinbase address, then falls back to getwork.
Has anyone tried GBT with an address?
Has anyone tried --no-gbt?
Now there's a "bug" when invalid data causes an error. That's not my definition of a bug. And where did usernames and passwords come from. Is this still getwork we're talking about?
I've asked many, many times for proper problem definitions. Is it so hard to do?
|
|
|
Win bin. Found a "bug" Wrong user / pass leads to an error about code
Else it seems fine!
I have no idea what that means.
|
|
|
|