Bitcoin Forum
July 22, 2018, 09:12:58 AM *
News: Latest stable version of Bitcoin Core: 0.16.1  [Torrent]. (New!)
 
   Home   Help Search Donate Login Register  
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 [30] 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 ... 191 »
  Print  
Author Topic: [ANN]: cpuminer-opt v3.8.8.1, open source optimized multi-algo CPU miner  (Read 411541 times)
joblo
Legendary
*
Offline Offline

Activity: 1148
Merit: 1016


View Profile
May 01, 2016, 12:13:29 PM
 #581

I have problem with CentOs 6.5 (final). I try lo install with build.sh command but i have problems (i'm windows user.. i don't know more about Cheesy ). Someone know how to install on CentOS 6.5? Specific parameters on configure command?

Thank you. great job

There should be no special procedure for centos. If this is your first time it is likely you are missing some
dependencies. Some new ones were added recently to support new algos. Post your errors if you still have
problems.

cpuminer-opt developer, https://bitcointalk.org/index.php?topic=1326803.0
BTC: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT,
ETH: 0x72122edabcae9d3f57eab0729305a425f6fef6d0
1532250778
Hero Member
*
Offline Offline

Posts: 1532250778

View Profile Personal Message (Offline)

Ignore
1532250778
Reply with quote  #2

1532250778
Report to moderator
1532250778
Hero Member
*
Offline Offline

Posts: 1532250778

View Profile Personal Message (Offline)

Ignore
1532250778
Reply with quote  #2

1532250778
Report to moderator
1532250778
Hero Member
*
Offline Offline

Posts: 1532250778

View Profile Personal Message (Offline)

Ignore
1532250778
Reply with quote  #2

1532250778
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
agente
Full Member
***
Offline Offline

Activity: 174
Merit: 100


View Profile
May 02, 2016, 01:05:54 PM
 #582

I have problem with CentOs 6.5 (final). I try lo install with build.sh command but i have problems (i'm windows user.. i don't know more about Cheesy ). Someone know how to install on CentOS 6.5? Specific parameters on configure command?

Thank you. great job

There should be no special procedure for centos. If this is your first time it is likely you are missing some
dependencies. Some new ones were added recently to support new algos. Post your errors if you still have
problems.

I went on Ubuntu... after some dep install and fix I compiled it! but i think i have a problem.. :

Code:
         **********  cpuminer-opt 3.1.18  ***********
     A CPU miner with multi algo support and optimized for CPUs
     with AES_NI extension.
     BTC donation address: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT
     Forked from TPruvot's cpuminer-multi with credits
     to Lucas Jones, elmad, palmd, djm34, pooler, ig0tik3d,
     Wolf0 and Jeff Garzik.

Checking CPU capatibility...
        Intel(R) Xeon(R) CPU E5-2650 v3 @ 2.30GHz
   CPU arch supports AES_NI...YES.
   SW built for AES_NI........YES.
   Algo supports AES_NI.......YES.
Start mining with AES_NI optimizations...

[2016-05-02 15:03:08] 2 miner threads started, using 'hodl' algorithm.
[2016-05-02 15:03:08] Starting Stratum on stratum+tcp://hodl.suprnova.cc:4693
[2016-05-02 15:03:17] Stratum difficulty set to 1
[2016-05-02 15:04:46] hodl.suprnova.cc:4693 hodl block 48575
[2016-05-02 15:04:46] CPU #0: 206 H, 2.31 H/s
[2016-05-02 15:04:46] CPU #1: 193 H, 2.17 H/s
[2016-05-02 15:05:09] CPU #1: 21 H, 0.90 H/s
[2016-05-02 15:05:10] accepted: 1/1 (100%), 227 H, 3.21 H/s yes!
[2016-05-02 15:05:14] CPU #0: 30 H, 1.09 H/s
[2016-05-02 15:05:14] accepted: 2/2 (100%), 51
joblo
Legendary
*
Offline Offline

Activity: 1148
Merit: 1016


View Profile
May 02, 2016, 03:19:06 PM
 #583

I have problem with CentOs 6.5 (final). I try lo install with build.sh command but i have problems (i'm windows user.. i don't know more about Cheesy ). Someone know how to install on CentOS 6.5? Specific parameters on configure command?

Thank you. great job

There should be no special procedure for centos. If this is your first time it is likely you are missing some
dependencies. Some new ones were added recently to support new algos. Post your errors if you still have
problems.

I went on Ubuntu... after some dep install and fix I compiled it! but i think i have a problem.. :

Code:
         **********  cpuminer-opt 3.1.18  ***********
     A CPU miner with multi algo support and optimized for CPUs
     with AES_NI extension.
     BTC donation address: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT
     Forked from TPruvot's cpuminer-multi with credits
     to Lucas Jones, elmad, palmd, djm34, pooler, ig0tik3d,
     Wolf0 and Jeff Garzik.

Checking CPU capatibility...
        Intel(R) Xeon(R) CPU E5-2650 v3 @ 2.30GHz
   CPU arch supports AES_NI...YES.
   SW built for AES_NI........YES.
   Algo supports AES_NI.......YES.
Start mining with AES_NI optimizations...

[2016-05-02 15:03:08] 2 miner threads started, using 'hodl' algorithm.
[2016-05-02 15:03:08] Starting Stratum on stratum+tcp://hodl.suprnova.cc:4693
[2016-05-02 15:03:17] Stratum difficulty set to 1
[2016-05-02 15:04:46] hodl.suprnova.cc:4693 hodl block 48575
[2016-05-02 15:04:46] CPU #0: 206 H, 2.31 H/s
[2016-05-02 15:04:46] CPU #1: 193 H, 2.17 H/s
[2016-05-02 15:05:09] CPU #1: 21 H, 0.90 H/s
[2016-05-02 15:05:10] accepted: 1/1 (100%), 227 H, 3.21 H/s yes!
[2016-05-02 15:05:14] CPU #0: 30 H, 1.09 H/s
[2016-05-02 15:05:14] accepted: 2/2 (100%), 51


That's a pretty low hashrate, you should be getting about 10 times that rate.
You're only running 2 threads, is that intentional? Does the hashrate remain that
low or does it increase and stabilize over time? The only thing I can think of that would
cause it is RAM. How much do you have and are you swapping?

cpuminer-opt developer, https://bitcointalk.org/index.php?topic=1326803.0
BTC: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT,
ETH: 0x72122edabcae9d3f57eab0729305a425f6fef6d0
joblo
Legendary
*
Offline Offline

Activity: 1148
Merit: 1016


View Profile
May 10, 2016, 01:04:29 AM
 #584

cpuminer-opt v3.2 is released. This is a restructuring release with no new algos or optimizations.

   - algo_gate is now used to select RPC version in many instances
   - Significant restructuring of algo_gate with realignment and
     renaming of many functions to be more descriptive and logical.
   - Some gate functions were removed or replaced with variables.
   - Code cleanup, fixed some compile warnings.

https://drive.google.com/file/d/0B0lVSGQYLJIZTzR2WU1NRGpYRnM/view?usp=sharing

cpuminer-opt developer, https://bitcointalk.org/index.php?topic=1326803.0
BTC: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT,
ETH: 0x72122edabcae9d3f57eab0729305a425f6fef6d0
th3.r00t
Sr. Member
****
Offline Offline

Activity: 312
Merit: 250



View Profile WWW
May 10, 2016, 06:51:32 AM
 #585

cpuminer-opt v3.2 is released. This is a restructuring release with no new algos or optimizations.

   - algo_gate is now used to select RPC version in many instances
   - Significant restructuring of algo_gate with realignment and
     renaming of many functions to be more descriptive and logical.
   - Some gate functions were removed or replaced with variables.
   - Code cleanup, fixed some compile warnings.

https://drive.google.com/file/d/0B0lVSGQYLJIZTzR2WU1NRGpYRnM/view?usp=sharing

Nice!

I think that this version has a serious bug - on ZR5 it submits one share and after that all rejects due to duplicate share.
Code:
         **********  cpuminer-opt 3.2  ***********
     A CPU miner with multi algo support and optimized for CPUs
     with AES_NI extension.
     BTC donation address: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT
     Forked from TPruvot's cpuminer-multi with credits
     to Lucas Jones, elmad, palmd, djm34, pooler, ig0tik3d,
     Wolf0 and Jeff Garzik.

Checking CPU capatibility...
        Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz
   CPU arch supports AES_NI...YES.
   SW built for AES_NI........YES.
   Algo supports AES_NI.......YES.
Start mining with AES_NI optimizations...

[2016-05-10 09:47:54] Starting Stratum on stratum+tcp://ziftrpool.io:3032
[2016-05-10 09:47:54] 8 miner threads started, using 'zr5' algorithm.
[2016-05-10 09:47:57] Stratum difficulty set to 0.001
[2016-05-10 09:47:57] ziftrpool.io:3032 zr5 block 613501
[2016-05-10 09:47:58] CPU #0: 62.55 kH, 84.38 kH/s
[2016-05-10 09:47:59] accepted: 1/1 (100%), 62.55 kH, 84.38 kH/s yes!
[2016-05-10 09:47:59] CPU #0: 62.55 kH, 106.76 kH/s
[2016-05-10 09:47:59] accepted: 1/2 (50%), 62.55 kH, 106.76 kH/s nooooo
[2016-05-10 09:47:59] reject reason: duplicate share
[2016-05-10 09:48:00] CPU #0: 62.55 kH, 107.13 kH/s
[2016-05-10 09:48:00] accepted: 1/3 (33%), 62.55 kH, 107.13 kH/s nooooo
[2016-05-10 09:48:00] reject reason: duplicate share
[2016-05-10 09:48:00] CPU #0: 62.55 kH, 107.00 kH/s
[2016-05-10 09:48:00] accepted: 1/4 (25%), 62.55 kH, 107.00 kH/s nooooo
[2016-05-10 09:48:00] reject reason: duplicate share
[2016-05-10 09:48:01] CPU #0: 62.55 kH, 107.15 kH/s
[2016-05-10 09:48:01] accepted: 1/5 (20%), 62.55 kH, 107.15 kH/s nooooo
[2016-05-10 09:48:01] reject reason: duplicate share
[2016-05-10 09:48:01] CPU #0: 62.55 kH, 106.72 kH/s
[2016-05-10 09:48:01] accepted: 1/6 (17%), 62.55 kH, 106.72 kH/s nooooo
[2016-05-10 09:48:01] reject reason: duplicate share
[2016-05-10 09:48:02] CPU #0: 62.55 kH, 107.09 kH/s
[2016-05-10 09:48:02] accepted: 1/7 (14%), 62.55 kH, 107.09 kH/s nooooo
[2016-05-10 09:48:02] reject reason: duplicate share
[2016-05-10 09:48:03] CPU #0: 62.55 kH, 106.65 kH/s
[2016-05-10 09:48:03] accepted: 1/8 (12%), 62.55 kH, 106.65 kH/s nooooo
[2016-05-10 09:48:03] reject reason: duplicate share
[2016-05-10 09:48:03] CPU #0: 62.55 kH, 107.12 kH/s
[2016-05-10 09:48:03] accepted: 1/9 (11%), 62.55 kH, 107.12 kH/s nooooo
[2016-05-10 09:48:03] reject reason: duplicate share
[2016-05-10 09:48:04] CPU #0: 62.55 kH, 107.12 kH/s
^C[2016-05-10 09:48:04] SIGINT received, exiting

BitSend ◢◤Clients | Source
www.bitsend.info
█▄
█████▄
████████▄
███████████▄
██████████████
███████████▀
████████▀
█████▀
█▀












Your Digital Network | 10MB Blocks
Algo: XEVAN | DK3 | Masternodes
Bitcore - BTX/BTC -Project












BSD -USDT | Bittrex | C.Gather | S.Exchange
Cryptopia | NovaExchange | Livecoin
CoinPayments | Faucet | Bitsend Airdrop













████
 ████
  ████
   ████
    ████
     ████
      ████
       ████
        ████
       ████
      ████
     ████
    ████
   ████
  ████
 ████
████

████
 ████
  ████
   ████
    ████
     ████
      ████
       ████
        ████
       ████
      ████
     ████
    ████
   ████
  ████
 ████
████
joblo
Legendary
*
Offline Offline

Activity: 1148
Merit: 1016


View Profile
May 10, 2016, 12:41:24 PM
 #586

cpuminer-opt v3.2 is released. This is a restructuring release with no new algos or optimizations.

   - algo_gate is now used to select RPC version in many instances
   - Significant restructuring of algo_gate with realignment and
     renaming of many functions to be more descriptive and logical.
   - Some gate functions were removed or replaced with variables.
   - Code cleanup, fixed some compile warnings.

https://drive.google.com/file/d/0B0lVSGQYLJIZTzR2WU1NRGpYRnM/view?usp=sharing

Nice!

I think that this version has a serious bug - on ZR5 it submits one share and after that all rejects due to duplicate share.
Code:
        **********  cpuminer-opt 3.2  ***********
     A CPU miner with multi algo support and optimized for CPUs
     with AES_NI extension.
     BTC donation address: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT
     Forked from TPruvot's cpuminer-multi with credits
     to Lucas Jones, elmad, palmd, djm34, pooler, ig0tik3d,
     Wolf0 and Jeff Garzik.

Checking CPU capatibility...
        Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz
   CPU arch supports AES_NI...YES.
   SW built for AES_NI........YES.
   Algo supports AES_NI.......YES.
Start mining with AES_NI optimizations...

[2016-05-10 09:47:54] Starting Stratum on stratum+tcp://ziftrpool.io:3032
[2016-05-10 09:47:54] 8 miner threads started, using 'zr5' algorithm.
[2016-05-10 09:47:57] Stratum difficulty set to 0.001
[2016-05-10 09:47:57] ziftrpool.io:3032 zr5 block 613501
[2016-05-10 09:47:58] CPU #0: 62.55 kH, 84.38 kH/s
[2016-05-10 09:47:59] accepted: 1/1 (100%), 62.55 kH, 84.38 kH/s yes!
[2016-05-10 09:47:59] CPU #0: 62.55 kH, 106.76 kH/s
[2016-05-10 09:47:59] accepted: 1/2 (50%), 62.55 kH, 106.76 kH/s nooooo
[2016-05-10 09:47:59] reject reason: duplicate share
[2016-05-10 09:48:00] CPU #0: 62.55 kH, 107.13 kH/s
[2016-05-10 09:48:00] accepted: 1/3 (33%), 62.55 kH, 107.13 kH/s nooooo
[2016-05-10 09:48:00] reject reason: duplicate share
[2016-05-10 09:48:00] CPU #0: 62.55 kH, 107.00 kH/s
[2016-05-10 09:48:00] accepted: 1/4 (25%), 62.55 kH, 107.00 kH/s nooooo
[2016-05-10 09:48:00] reject reason: duplicate share
[2016-05-10 09:48:01] CPU #0: 62.55 kH, 107.15 kH/s
[2016-05-10 09:48:01] accepted: 1/5 (20%), 62.55 kH, 107.15 kH/s nooooo
[2016-05-10 09:48:01] reject reason: duplicate share
[2016-05-10 09:48:01] CPU #0: 62.55 kH, 106.72 kH/s
[2016-05-10 09:48:01] accepted: 1/6 (17%), 62.55 kH, 106.72 kH/s nooooo
[2016-05-10 09:48:01] reject reason: duplicate share
[2016-05-10 09:48:02] CPU #0: 62.55 kH, 107.09 kH/s
[2016-05-10 09:48:02] accepted: 1/7 (14%), 62.55 kH, 107.09 kH/s nooooo
[2016-05-10 09:48:02] reject reason: duplicate share
[2016-05-10 09:48:03] CPU #0: 62.55 kH, 106.65 kH/s
[2016-05-10 09:48:03] accepted: 1/8 (12%), 62.55 kH, 106.65 kH/s nooooo
[2016-05-10 09:48:03] reject reason: duplicate share
[2016-05-10 09:48:03] CPU #0: 62.55 kH, 107.12 kH/s
[2016-05-10 09:48:03] accepted: 1/9 (11%), 62.55 kH, 107.12 kH/s nooooo
[2016-05-10 09:48:03] reject reason: duplicate share
[2016-05-10 09:48:04] CPU #0: 62.55 kH, 107.12 kH/s
^C[2016-05-10 09:48:04] SIGINT received, exiting


Bug confirmed, under investigation.

Edit: I had broken ZR5 and fixed it and apparently broke it again I missed the second break because I can get a
few (I've seen up to 5) accepts before the duplicate shares start.

I never found the first break with code analysis, I simply backed out until it worked and recoded from there.
I have found an intermediate build that worked before the second break and will recode again with more extensive
testing so I can identify experimentally what exactly broke it. It's not the preferred approach but it is effective.

I've got 42 accepts @ 100% with the current test build.

Edit2:  I've reimplemented most of the changes between the last stable build and v3.2 without breaking anything,
but I saved the best for last. I want to cleanup the code a bit first and do more testing before tackling the likely
culprit.

Edit3: I have almost everything reimplemented and zr5 still works. That means I have no idea what the bug was
but I fixed it. I'm getting tired so I 'll wait till tomorrow, do another review and more testing before release.

cpuminer-opt developer, https://bitcointalk.org/index.php?topic=1326803.0
BTC: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT,
ETH: 0x72122edabcae9d3f57eab0729305a425f6fef6d0
hmage
Member
**
Offline Offline

Activity: 83
Merit: 10


View Profile
May 10, 2016, 07:20:05 PM
 #587

I've noticed that some algos misreport their benchmark results if you run it under --benchmark with --time-limit.

A good example is c11:

Code:
cpuminer-opt --benchmark --time-limit 120 -a c11
This will run and will show steady 700kHs on my i7 4770, but at the end it will spur up and report 1791kHs.

I am automating the benchmarks and caught this too late -- cpuminers show a single-line result as last line in hashes per second.

I extract that and put into mining profitability calculation as seen here: https://hmage.net/minerstats.php#cpu_i7_4770_oc
I then graph that to see the trends here: http://grafana.hmage.net/dashboard/db/miner-stats

As a result, I will need to manually rerun all benchmarks that showed cpuminer-opt as favourable.

[EDIT]: Same with sib -- last line reports 1333333, but real speed is 486350.
joblo
Legendary
*
Offline Offline

Activity: 1148
Merit: 1016


View Profile
May 10, 2016, 08:30:48 PM
 #588

I've noticed that some algos misreport their benchmark results if you run it under --benchmark with --time-limit.

A good example is c11:

Code:
cpuminer-opt --benchmark --time-limit 120 -a c11
This will run and will show steady 700kHs on my i7 4770, but at the end it will spur up and report 1791kHs.

I am automating the benchmarks and caught this too late -- cpuminers show a single-line result as last line in hashes per second.

I extract that and put into mining profitability calculation as seen here: https://hmage.net/minerstats.php#cpu_i7_4770_oc
I then graph that to see the trends here: http://grafana.hmage.net/dashboard/db/miner-stats

As a result, I will need to manually rerun all benchmarks that showed cpuminer-opt as favourable.

[EDIT]: Same with sib -- last line reports 1333333, but real speed is 486350.

I haven't paid any attention to benchmark other than a sanity test before connecting to a pool.
Didn't realize anyone was using it for anything useful.

I know of one change I made that can affect first and last result, I moved the share submission up
before the hash display. The change never produced a significant improvement but I never backed
it out. I'll look into it further when I solve the ZR5 problem,

Edit: I presume the error you are seeing is in the "Benchmark:" hashrate display. I don't see how the change
I mentioned above could have caused this. Furthermore this display uses a unique formatting function.
I don't think it's my bug. I had made another change which would show a lower benchmark rate because I
was counting the entire miner thread loop time instead of just the scan time but, again, I don't see how that change
could have produce the error you are seeing.

The "Benchmark" rate should be the same number as the previous "Total" rate because it is using the same variable.
This suggests a formatting error. Anyway I'll have to investigate further tomorrow.

Edit2: This is what I get, I don't see the problem.

Code:
[2016-05-11 09:39:03] CPU #5: 246.93 kH, 47.87 kH/s
[2016-05-11 09:39:03] CPU #2: 122.98 kH, 50.54 kH/s
[2016-05-11 09:39:03] CPU #0: 55.23 kH, 48.31 kH/s
[2016-05-11 09:39:04] CPU #6: 52.29 kH, 48.96 kH/s
[2016-05-11 09:39:04] CPU #1: 167.29 kH, 55.89 kH/s
[2016-05-11 09:39:04] CPU #3: 260.19 kH, 46.91 kH/s
[2016-05-11 09:39:04] CPU #7: 49.19 kH, 57.17 kH/s
[2016-05-11 09:39:04] Total: 1206.99 kH, 406.06 kH/s
[2016-05-11 09:39:06] CPU #7: 262.14 kH, 115.02 kH/s
[2016-05-11 09:39:06] Total: 1419.94 kH, 463.92 kH/s
[2016-05-11 09:39:07] CPU #5: 262.14 kH, 67.54 kH/s
[2016-05-11 09:39:08] CPU #4: 262.14 kH, 52.88 kH/s
[2016-05-11 09:39:08] CPU #0: 262.14 kH, 55.62 kH/s
[2016-05-11 09:39:08] Benchmark: 463.92 kH/s
463916


Edit3: I ran the test several times with both algos and alway produced the correct result.
Could your script be misinterpreting? Without further information on how to reproduce
I consider this issue closed.

cpuminer-opt developer, https://bitcointalk.org/index.php?topic=1326803.0
BTC: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT,
ETH: 0x72122edabcae9d3f57eab0729305a425f6fef6d0
joblo
Legendary
*
Offline Offline

Activity: 1148
Merit: 1016


View Profile
May 11, 2016, 01:32:15 PM
 #589

X17 algo is now supported by cpuminer-opt. It has been tested at zpool with v3.1.18.

The message warning that the algo has not been tested can be ignored. It will be removed from the
next release.

cpuminer-opt developer, https://bitcointalk.org/index.php?topic=1326803.0
BTC: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT,
ETH: 0x72122edabcae9d3f57eab0729305a425f6fef6d0
joblo
Legendary
*
Offline Offline

Activity: 1148
Merit: 1016


View Profile
May 11, 2016, 03:55:53 PM
 #590

cpuminer-opt v3.2.1 is available.

zr5: fixed duplicate shares
decred: fixed invalid extranonce2 suffix
x17: pool tested and fully supported

https://drive.google.com/file/d/0B0lVSGQYLJIZWHUxY1BtMWdLd00/view?usp=sharing

cpuminer-opt developer, https://bitcointalk.org/index.php?topic=1326803.0
BTC: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT,
ETH: 0x72122edabcae9d3f57eab0729305a425f6fef6d0
hmage
Member
**
Offline Offline

Activity: 83
Merit: 10


View Profile
May 11, 2016, 05:23:24 PM
 #591

Edit3: I ran the test several times with both algos and alway produced the correct result.
Could your script be misinterpreting? Without further information on how to reproduce
I consider this issue closed.

I was running it without the script and was getting the wrong output.

I'm talking about the last line: 463916

This is the line I'm parsing in the script.

Maybe it's because I have hyperthreading enabled on my CPU? Could be a thread synchronization issue.

It doesn't always happen for me either. I've been trying to reproduce the problem for you with v3.2.1 and asciinema and so far no luck.

I was experiencing problem on 3.1.17. Maybe you fixed it in v3.2.1? I see you've changed up stuff that could be relevant since then.
joblo
Legendary
*
Offline Offline

Activity: 1148
Merit: 1016


View Profile
May 11, 2016, 05:44:33 PM
 #592

Edit3: I ran the test several times with both algos and alway produced the correct result.
Could your script be misinterpreting? Without further information on how to reproduce
I consider this issue closed.

I was running it without the script and was getting the wrong output.

I'm talking about the last line: 463916

This is the line I'm parsing in the script.

Maybe it's because I have hyperthreading enabled on my CPU? Could be a thread synchronization issue.

It doesn't always happen for me either. I've been trying to reproduce the problem for you with v3.2.1 and asciinema and so far no luck.

I was experiencing problem on 3.1.17. Maybe you fixed it in v3.2.1? I see you've changed up stuff that could be relevant since then.

I also use hyperthreading. I haven't intentionally touched either algo in several releases and 3.2 was a restructuring release with
no intended change in functionality. If you see it again, let me know and I'll take another look. Buit it's pretty clear from the code
that the last TOTAL rate displays the same data as the last line.

From looking at the code the time_limit stuff seems in an odd place, the end of the loop would seem more appropriate with the
rest of the display code. I may consider moving it on speculation if the problem returns.

cpuminer-opt developer, https://bitcointalk.org/index.php?topic=1326803.0
BTC: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT,
ETH: 0x72122edabcae9d3f57eab0729305a425f6fef6d0
hmage
Member
**
Offline Offline

Activity: 83
Merit: 10


View Profile
May 11, 2016, 06:18:08 PM
 #593

I also use hyperthreading. I haven't intentionally touched either algo in several releases and 3.2 was a restructuring release with
no intended change in functionality. If you see it again, let me know and I'll take another look. Buit it's pretty clear from the code
that the last TOTAL rate displays the same data as the last line.

Yes, the output is same as total, just in format that's easier to parse, no problem with that fact.

The problem was that right before the end, it would spit thousands of lines in a second with ever increasing hashrate that would inflate the total result.

Do you keep an archive of older versions of cpuminer-opt? I'd like to check older version and I foolishly deleted my local copy.
joblo
Legendary
*
Offline Offline

Activity: 1148
Merit: 1016


View Profile
May 11, 2016, 07:08:28 PM
 #594

I also use hyperthreading. I haven't intentionally touched either algo in several releases and 3.2 was a restructuring release with
no intended change in functionality. If you see it again, let me know and I'll take another look. Buit it's pretty clear from the code
that the last TOTAL rate displays the same data as the last line.

Yes, the output is same as total, just in format that's easier to parse, no problem with that fact.

The problem was that right before the end, it would spit thousands of lines in a second with ever increasing hashrate that would inflate the total result.

Do you keep an archive of older versions of cpuminer-opt? I'd like to check older version and I foolishly deleted my local copy.

A few of the DL links are still active. If you want a specific release let me know and I'll reactivate it. Keep in mind
there have been some problem releases along the way which you probbaly want to avoid. The post for each release
is still in the thread and should help you find the most stable ones.

Personally I don't think it's worth the effort to go back. If the problem reoccurs with the current release you can
collect more data and we can pursue it from there.




cpuminer-opt developer, https://bitcointalk.org/index.php?topic=1326803.0
BTC: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT,
ETH: 0x72122edabcae9d3f57eab0729305a425f6fef6d0
hmage
Member
**
Offline Offline

Activity: 83
Merit: 10


View Profile
May 12, 2016, 12:14:21 AM
 #595

I've noticed another performance regression compared to cpuminer-multi.

Algos that have very high number of calls per second tend to be slower on cpuminer-opt because of algo-gate callback functions.

When calling through function pointers, the pointer needs to be dereferenced first before jumping, when the function in question is fast enough, the dereferencing could be reducing performance vs direct function call.

One of the ways to fix that is to put dereferencing outside the loop.

pseudocode before:
Code:
func = &hash_sha256;
while(true) { func(); }

pseudocode after:
Code:
funcloop = &hashloop_sha256;
funcloop();

hashloop_sha256() {while(true) {hash_sha256());}

This moves deferencing to be done only once at start of the loop.
joblo
Legendary
*
Offline Offline

Activity: 1148
Merit: 1016


View Profile
May 12, 2016, 12:34:27 AM
 #596

I've noticed another performance regression compared to cpuminer-multi.

Algos that have very high number of calls per second tend to be slower on cpuminer-opt because of algo-gate callback functions.

When calling through function pointers, the pointer needs to be dereferenced first before jumping, when the function in question is fast enough, the dereferencing could be reducing performance vs direct function call.

One of the ways to fix that is to put dereferencing outside the loop.

pseudocode before:
Code:
func = &hash_sha256;
while(true) { func(); }

pseudocode after:
Code:
funcloop = &hashloop_sha256;
funcloop();

hashloop_sha256() {while(true) {hash_sha256());}

This moves deferencing to be done only once at start of the loop.

Have you measured a regression? My measurements between 3.0.7 (pre algo-gate)  and 3.1 showed a modest
improvement in performance accross the board.

Your suggestion would add the overhead of a function call and return on every iteration to save a pointer deref.
Looks like a bad trade to me.

cpuminer-opt developer, https://bitcointalk.org/index.php?topic=1326803.0
BTC: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT,
ETH: 0x72122edabcae9d3f57eab0729305a425f6fef6d0
hmage
Member
**
Offline Offline

Activity: 83
Merit: 10


View Profile
May 12, 2016, 12:43:38 AM
 #597

Your suggestion would add the overhead of a function call and return on every iteration to save a pointer deref.
Looks like a bad trade to me.

I meant to move the dereference outside of iteration completely. Have the iteration cycle code for each algo so it doesn't go through dereferencing.

Note - all of this is speculation, I still didn't measure exactly where the slowdown is and why it's slower. I'm just reporting that for some reason non-AES versions of algos are slower in cpuminer-opt compared to cpuminer-multi. This needs further investigation.

One same CPU, these algos are slower on cpuminer-opt compared to cpuminer-multi:
Code:

    "groestl"       =>    1109819 / 1000, // cpuminer-opt
    "groestl"       =>    1125917 / 1000, // cpuminer-nicehash
    "keccak"        =>    6964234 / 1000, // cpuminer-opt
    "keccak"        =>    8332952 / 1000, // cpuminer-nicehash
    "luffa"         =>    2728931 / 1000, // cpuminer-opt
    "luffa"         =>    3177996 / 1000, // cpuminer-nicehash
    "lyra2"         =>     716945 / 1000, // cpuminer-opt
    "lyra2"         =>     921109 / 1000, // cpuminer-nicehash
    "neoscrypt"     =>      27583 / 1000, // cpuminer-opt
    "neoscrypt"     =>      28891 / 1000, // cpuminer-nicehash
    "pentablake"    =>    3479320 / 1000, // cpuminer-opt
    "pentablake"    =>    3609862 / 1000, // cpuminer-nicehash
    "pluck"         =>       1722 / 1000, // cpuminer-opt
    "pluck"         =>       1818 / 1000, // cpuminer-nicehash
    "s3"            =>    1086149 / 1000, // cpuminer-opt
    "s3"            =>    1201897 / 1000, // cpuminer-nicehash
    "scrypt"        =>      91557 / 1000, // cpuminer-opt
    "scrypt"        =>      99702 / 1000, // cpuminer-nicehash
    "sha256d"       =>   53122339 / 1000, // cpuminer-opt
    "sha256d"       =>   54669375 / 1000, // cpuminer-nicehash
    "shavite3"      =>    2232258 / 1000, // cpuminer-opt
    "shavite3"      =>    2343704 / 1000, // cpuminer-nicehash
    "skein"         =>    6405675 / 1000, // cpuminer-opt
    "skein"         =>    6586806 / 1000, // cpuminer-nicehash
    "skein2"        =>    7985012 / 1000, // cpuminer-opt
    "skein2"        =>    8167405 / 1000, // cpuminer-nicehash

I'm using this version of cpuminer-multi — https://github.com/nicehash/cpuminer-multi
joblo
Legendary
*
Offline Offline

Activity: 1148
Merit: 1016


View Profile
May 12, 2016, 01:46:06 AM
 #598

Your suggestion would add the overhead of a function call and return on every iteration to save a pointer deref.
Looks like a bad trade to me.

I meant to move the dereference outside of iteration completely. Have the iteration cycle code for each algo so it doesn't go through dereferencing.

Note - all of this is speculation, I still didn't measure exactly where the slowdown is and why it's slower. I'm just reporting that for some reason non-AES versions of algos are slower in cpuminer-opt compared to cpuminer-multi. This needs further investigation.

One same CPU, these algos are slower on cpuminer-opt compared to cpuminer-multi:
Code:

    "groestl"       =>    1109819 / 1000, // cpuminer-opt
    "groestl"       =>    1125917 / 1000, // cpuminer-nicehash
    "keccak"        =>    6964234 / 1000, // cpuminer-opt
    "keccak"        =>    8332952 / 1000, // cpuminer-nicehash
    "luffa"         =>    2728931 / 1000, // cpuminer-opt
    "luffa"         =>    3177996 / 1000, // cpuminer-nicehash
    "lyra2"         =>     716945 / 1000, // cpuminer-opt
    "lyra2"         =>     921109 / 1000, // cpuminer-nicehash
    "neoscrypt"     =>      27583 / 1000, // cpuminer-opt
    "neoscrypt"     =>      28891 / 1000, // cpuminer-nicehash
    "pentablake"    =>    3479320 / 1000, // cpuminer-opt
    "pentablake"    =>    3609862 / 1000, // cpuminer-nicehash
    "pluck"         =>       1722 / 1000, // cpuminer-opt
    "pluck"         =>       1818 / 1000, // cpuminer-nicehash
    "s3"            =>    1086149 / 1000, // cpuminer-opt
    "s3"            =>    1201897 / 1000, // cpuminer-nicehash
    "scrypt"        =>      91557 / 1000, // cpuminer-opt
    "scrypt"        =>      99702 / 1000, // cpuminer-nicehash
    "sha256d"       =>   53122339 / 1000, // cpuminer-opt
    "sha256d"       =>   54669375 / 1000, // cpuminer-nicehash
    "shavite3"      =>    2232258 / 1000, // cpuminer-opt
    "shavite3"      =>    2343704 / 1000, // cpuminer-nicehash
    "skein"         =>    6405675 / 1000, // cpuminer-opt
    "skein"         =>    6586806 / 1000, // cpuminer-nicehash
    "skein2"        =>    7985012 / 1000, // cpuminer-opt
    "skein2"        =>    8167405 / 1000, // cpuminer-nicehash

I'm using this version of cpuminer-multi — https://github.com/nicehash/cpuminer-multi

Well, your pseudo code had the call/ret inside the loop.

Most of the algos in your list are of little interest, except neoscrypt. That is one algo I'd like to improve.
In relative terms it underperforms the GPU version by a lot.

Another thing to consider is that local hashrate reporting by the miner isn't very reliable and your data
is well within a 2% margin of error. I was seeing greater variation just from different sessions of the same code.
I thought I was making incremental improvements with some changes and regressions with others when all along
it was just noise.

I like intelectual challenges but you need to do a better job. You don't provide the full picture initilally and only
give more info after I poke holes in your initial presentation. This seeems to be a pattern with your "suggestions".

You obviously have some knowledge, maybe not as much as me, but knowledge in areas where I am weak, c++,
for example. I'm also weak in GUI apps and web programming but I'm strong in OS fundamentals and CPU architecture,
though not specifically Linux and x86. One of my biggest challenges has been applying my knowledge and experience
to an unfamiliar environment. I tend to make a lot of mistakes as a result.

I have given you the benefit of the doubt and tried to probe you for more info in areas where I didn't have the confidence
to call you out. But so far it's come up empty. When you challenge me on one of my strengths you'd better be well
prepared.
But so far it's come up empty


cpuminer-opt developer, https://bitcointalk.org/index.php?topic=1326803.0
BTC: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT,
ETH: 0x72122edabcae9d3f57eab0729305a425f6fef6d0
hmage
Member
**
Offline Offline

Activity: 83
Merit: 10


View Profile
May 12, 2016, 11:57:06 AM
 #599

I have given you the benefit of the doubt and tried to probe you for more info in areas where I didn't have the confidence
to call you out. But so far it's come up empty. When you challenge me on one of my strengths you'd better be well
prepared.

I don't care if I challenge you or not, I'm not here for your entertainment.

10 runs of cpuminer-opt are giving results that are consistently less than 10 runs of cpuminer-multi on the algos listed above. Simple as that.

You're free to ignore this fact, of course. But I thought it'd be nice if you knew it.
joblo
Legendary
*
Offline Offline

Activity: 1148
Merit: 1016


View Profile
May 12, 2016, 04:04:48 PM
 #600

I have given you the benefit of the doubt and tried to probe you for more info in areas where I didn't have the confidence
to call you out. But so far it's come up empty. When you challenge me on one of my strengths you'd better be well
prepared.

I don't care if I challenge you or not, I'm not here for your entertainment.

10 runs of cpuminer-opt are giving results that are consistently less than 10 runs of cpuminer-multi on the algos listed above. Simple as that.

You're free to ignore this fact, of course. But I thought it'd be nice if you knew it.

When I give you constructive feedback you seem to get angry which is counterproductive. I thank you for your work
but it was not enough to draw any conclusions. A 2% diffreence is statistically insignificant. But let's assume it is.

You suggested it was caused by the use of function pointers by algo-gate. I countered that my measurements when
algo-gate was implemented showed an improvement. That disproves you theory, one that was not supported by any
evidence BTW. So if the difference is real it must be caused by something else. There are a lot of possibilities.
Differences in CPU architecture (I don't mean capabilities) can cause measurable differences between algos. Cache
size and organization, execution environment, memory interface, etc can all cause different algos to perform differently
on different CPUs. If you look at HOdl it performs well on an i7 but poorly on an i5 due to the smaller cache. As it turns
out it was specifically optimized for the size of the i7 cache.

You need to do your research, get your facts straight and present a coherent case it you want to get any attention,
especially when you are criticizing someone's work. I have a thick skin, thicker than yours apparently, so I can take
it and give it back. Put your self in my position, how would you react to someone taking pot shots about what you're
doing wrong and how you should do things. Oh, I already know, you get angry.

cpuminer-opt developer, https://bitcointalk.org/index.php?topic=1326803.0
BTC: 12tdvfF7KmAsihBXQXynT6E6th2c2pByTT,
ETH: 0x72122edabcae9d3f57eab0729305a425f6fef6d0
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 [30] 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 ... 191 »
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!