Author

Topic: [ANN]: cpuminer-opt v3.8.8.1, open source optimized multi-algo CPU miner - page 161. (Read 444067 times)

legendary
Activity: 1484
Merit: 1082
ccminer/cpuminer developer
whitespace cleaner tool

Code:
alias trimfile="sed -r 's~[[:space:]]+\$~~g' -i"
legendary
Activity: 1470
Merit: 1114

Here you go, Westmere capabilities check:

Checking CPU capatibility...
        Intel(R) Xeon(R) CPU           E5649  @ 2.53GHz
   CPU arch supports AES-AVX...YES.
   SW built for AES-AVX........YES.
   Algo supports AES-AVX.......YES.
Start mining with AES-AVX optimizations...

[2016-06-02 23:18:22] Starting Stratum on stratum+tcp://xre.suprnova.cc:2114
[2016-06-02 23:18:22] 24 miner threads started, using 'x11evo' algorithm.


Thanks, more good info.

Based on the current implementation of the capabilities check, the fact the miner didn't crash
and the hash rate you're getting I believe you are mining with AES on that Westmere.

That changes things. I'm going to have to review previous data to see if it is consistent with this
new data. I'll also wait for more new data from other users.
newbie
Activity: 53
Merit: 0
sry just saw it on the first page.

Westmere Xeon E5649 now works fine, 2 CPU's are throwing ~700kH/s (using cpuminer.exe)

Sandybridge build on i5-2500K gets ~250kH/s

Older Xeon's E5540 (Gainestown) with only SSE2 support are starting miner but crashes every time after receiving first data (using cpuminer.exe)

Checking CPU capatibility...
        Intel(R) Xeon(R) CPU           E5540  @ 2.53GHz
   CPU arch supports AES-AVX...NO.
   CPU arch supports SSE2.....YES.
YES.
Starting mining without AES-AVX optimizations...


Thank you for your testing, the crash of Gainstown is expected because it has no AES whatsoever. This proves
the Westmere build is not compatible with core2, another significant data point.

cpuminer-opt does work on core2 on linux (all algos) and Windows (all except hodl). This I have tested. You will
either have to compile your own with -march=native or ask CMB to do it for you.

Can you post the capabilities check results from the Westmere CPUs?


Here you go, Westmere capabilities check:

Checking CPU capatibility...
        Intel(R) Xeon(R) CPU           E5649  @ 2.53GHz
   CPU arch supports AES-AVX...YES.
   SW built for AES-AVX........YES.
   Algo supports AES-AVX.......YES.
Start mining with AES-AVX optimizations...

[2016-06-02 23:18:22] Starting Stratum on stratum+tcp://xre.suprnova.cc:2114
[2016-06-02 23:18:22] 24 miner threads started, using 'x11evo' algorithm.
legendary
Activity: 1470
Merit: 1114
By the way, after that patch, I've found a bug:
Code:
Checking compatibility of this cpuminer and CPU (Intel(R) Core(TM)2 Quad CPU    Q9400  @ 2.66GHz)
   cpuminer expects SSE2:           YES.
   cpuminer expects AES:            no
   cpuminer expects AVX:            no
   CPU supports SSE2:               YES.
   CPU supports AES:                no
   CPU supports AVX:                YES.
   requested algo supports AES+AVX: YES.
[2016-06-03 04:57:04] 4 miner threads started, using 'hodl' algorithm.

See that "CPU supports AVX: yes"? That's a bug in has_avx(). For some reason the code you inherited returns yes if CPU either has AVX or OSXSAVE flag. Fix — https://github.com/hmage/cpuminer-opt/commit/5975fcf2ecad7057a254cc358e55434059124971


I looked into this a bit more and there is more to this bug than I first thought. The way the flags are defined is illogical
and does not agree with the wikipedia reference with no explanation for the discrepency. The coding does not seem
like a typical error. That's not the kind of definition you do by mistake. This bizarre definition also applies to the FMA3
flag. These flags are used in best_cpu_feature function so one would think that if anyone ever used that function
they might have noticed some bizarre results.

That is all to say there might be some legitimacy to the way the flags are defined. I noted in the wikipedia article that
the bit definitions were as of 2011. This suggests that the flags were different prior to 2011 which includes westmere.

Even if the coding is legitimate I would not have done it that way. I woul dhave defined the bits individually and
only used the compound expression when they were being read.

I'm not convinced it is a bug. It may be a relic of a previous CPUID format. But it's a moot point because I don't intend
to revisit this issue without a breakthrough.
legendary
Activity: 1470
Merit: 1114
sry just saw it on the first page.

Westmere Xeon E5649 now works fine, 2 CPU's are throwing ~700kH/s (using cpuminer.exe)

Sandybridge build on i5-2500K gets ~250kH/s

Older Xeon's E5540 (Gainestown) with only SSE2 support are starting miner but crashes every time after receiving first data (using cpuminer.exe)

Checking CPU capatibility...
        Intel(R) Xeon(R) CPU           E5540  @ 2.53GHz
   CPU arch supports AES-AVX...NO.
   CPU arch supports SSE2.....YES.
YES.
Starting mining without AES-AVX optimizations...


Thank you for your testing, the crash of Gainstown is expected because it has no AES whatsoever. This proves
the Westmere build is not compatible with core2, another significant data point.

cpuminer-opt does work on core2 on linux (all algos) and Windows (all except hodl). This I have tested. You will
either have to compile your own with -march=native or ask CMB to do it for you.

Can you post the capabilities check results from the Westmere CPUs?
legendary
Activity: 1470
Merit: 1114

First snippet says no to AES, yes to SSE2, and yes for nothing.


Wrong. First snippet says yes to AES CPU, second snippet says YES to SSE2 CPU,
third snippet say YES to SSE2 CPU again.
legendary
Activity: 1470
Merit: 1114
member
Activity: 83
Merit: 10
By the way, after that patch, I've found a bug:
Code:
Checking compatibility of this cpuminer and CPU (Intel(R) Core(TM)2 Quad CPU    Q9400  @ 2.66GHz)
   cpuminer expects SSE2:           YES.
   cpuminer expects AES:            no
   cpuminer expects AVX:            no
   CPU supports SSE2:               YES.
   CPU supports AES:                no
   CPU supports AVX:                YES.
   requested algo supports AES+AVX: YES.
[2016-06-03 04:57:04] 4 miner threads started, using 'hodl' algorithm.

See that "CPU supports AVX: yes"? That's a bug in has_avx(). For some reason the code you inherited returns yes if CPU either has AVX or OSXSAVE flag. Fix — https://github.com/hmage/cpuminer-opt/commit/5975fcf2ecad7057a254cc358e55434059124971

cpuid on that machine reports that OSXSAVE flag is supported by this cpu but not AVX:
Code:
$ cpuid -1|egrep -i 'avx|xsave'
      FXSAVE/FXRSTOR                         = true
      XSAVE/XSTOR states                      = true
      OS-enabled XSAVE/XSTOR                  = true
      AVX: advanced vector extensions         = false
      AVX2: advanced vector extensions 2       = false
      AVX512F: AVX-512 foundation instructions = false
      AVX512PF: prefetch instructions          = false
      AVX512ER: exponent & reciprocal instrs   = false
      AVX512CD: conflict detection instrs      = false
   XSAVE features (0xd/0):
         XCR0 field supported: AVX state      = false
         XCR0 field supported: AVX-512 state  = false
      bytes required by XSAVE/XRSTOR area     = 0x00000240 (576)
   XSAVE features (0xd/1):
      XSAVEOPT instruction                        = false
      XSAVEC instruction                          = false
      XSAVES/XRSTORS instructions                 = false
member
Activity: 83
Merit: 10
AMD
Code:
         **********  cpuminer-opt 3.3.4  ***********
     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 and Jeff Garzik.

Checking CPU capatibility...
        AMD Phenom(tm) II X4 940 Processor
   CPU arch supports AES-AVX...NO.
   CPU arch supports SSE2.....YES.
YES.
Starting mining without AES-AVX optimizations...
Something is missing there...

Intel
Code:
         **********  cpuminer-opt 3.3.4  ***********
     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 and Jeff Garzik.

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

Nothing missing just something extra, two answers to the same question.
I'm in no rush to fix it but thanks for pointing it out.


First snippet says no to AES, yes to SSE2, and yes for nothing.

Second snippet says yes to AES, yes to AES, yes to AES.

See that second snippet doesn't mention SSE2 at all?

To avoid user confusion, I suggest you simplify the logic and always display yes/no answers to sse2, aes and avx, like this:
Code:
Checking compatibility of this cpuminer and CPU (Intel(R) Core(TM) i5-4570S CPU @ 2.90GHz)
   cpuminer expects SSE2:           YES.
   cpuminer expects AES:            YES.
   cpuminer expects AVX:            YES.
   CPU supports SSE2:               YES.
   CPU supports AES:                YES.
   CPU supports AVX:                YES.
   requested algo supports AES+AVX: YES.
[2016-06-03 04:53:49] 4 miner threads started, using 'hodl' algorithm.

Diff is here -- https://github.com/hmage/cpuminer-opt/commit/ddcf4d6d5bf2ace2582947eaf9ff565114460f2f

newbie
Activity: 53
Merit: 0
sry just saw it on the first page.

Westmere Xeon E5649 now works fine, 2 CPU's are throwing ~700kH/s (using cpuminer.exe)

Sandybridge build on i5-2500K gets ~250kH/s

Older Xeon's E5540 (Gainestown) with only SSE2 support are starting miner but crashes every time after receiving first data (using cpuminer.exe)

Checking CPU capatibility...
        Intel(R) Xeon(R) CPU           E5540  @ 2.53GHz
   CPU arch supports AES-AVX...NO.
   CPU arch supports SSE2.....YES.
YES.
Starting mining without AES-AVX optimizations...


Problem signature:
  Problem Event Name:   APPCRASH
  Application Name:   cpuminer.exe
  Application Version:   0.0.0.0
  Application Timestamp:   00130158
  Fault Module Name:   cpuminer.exe
  Fault Module Version:   0.0.0.0
  Fault Module Timestamp:   00130158
  Exception Code:   c000001d
  Exception Offset:   00000000000b7bd1
  OS Version:   6.3.9600.2.0.0.272.7
  Locale ID:   1033
  Additional Information 1:   3644
  Additional Information 2:   3644a7a02c1327208b46c488f6992045
  Additional Information 3:   0f4d
  Additional Information 4:   0f4d7611d008af45087a270ad4ae60b1
legendary
Activity: 1470
Merit: 1114
Joblo, can you make Windows version so I can test on Xeon E5649 (Westmere-EP, AES without AVX)

Cryptomining Blog has made binaries, follow the link in my sig for details. They have a westmere build.
You should  also try the sandybridge build. I'd like to see your results.
newbie
Activity: 53
Merit: 0
Joblo, can you make Windows version so I can test on Xeon E5649 (Westmere-EP, AES without AVX)
legendary
Activity: 1470
Merit: 1114
hero member
Activity: 602
Merit: 500
Yes, I'm getting all YESes with cpuminer.exe
legendary
Activity: 1470
Merit: 1114
Yes, for HODL. It is a Westmere-EP CPU, not Ivybridge. It is a lower power model and has less hashrate
It only works with cpuminer.exe, the others all crash when I try them including the amd one.

Just rebooted the computer and it seems to work normally again, the cpu load is maxed out and the hashrate is high., will monitor it for a while just in case.
Before rebooting the load was getting to minimum and maximum all the time with cpuminer.exe, but with wolfs miner it was maxing out at 100% and providing normal hashtrate.

Yours is the first Westmere that reports support for AES and AVX. Did you get all YESes? If so that's another data point in
to the previous problems.

If you got a YES for AES SW build it helps explain the problems some of the other Westmeres have had. Their CPUs say
NO to AES then fail to detect a comtabible SW build. It fails for SSE2 because it's actually AES.

With v3.3.4 the miner will no longer error out in a situation where it believes the CPU does not support AES but the
SW does. It will try to run anyway. If the CPU Is in fact missing AES it will crash. This would also mean that some
westmere's (like yours) support AES and others don't. Still a confusing situation.

This may leave some westmere users without a useable binary for cpuminer-opt unless they compile their own.

Waiting for feedback from them.
hero member
Activity: 602
Merit: 500
Yes, for HODL. It is a Westmere-EP CPU, not Ivybridge. It is a lower power model and has less hashrate
It only works with cpuminer.exe, the others all crash when I try them including the amd one.

Just rebooted the computer and it seems to work normally again, the cpu load is maxed out and the hashrate is high., will monitor it for a while just in case.
Before rebooting the load was getting to minimum and maximum all the time with cpuminer.exe, but with wolfs miner it was maxing out at 100% and providing normal hashtrate.

Ok it did the same thing again, started at high CPU load and max hashrate, found a couple of shares and then the performance and CPU load started dropping to about 10% of the normal value...
legendary
Activity: 1470
Merit: 1114
L5630 Westmere works just fine with AES-NI and AVX with the latest Win binaries from CMB, performance however seems a bit weird going between 10 and 100 H/s with CPU load being low. Wolfs miner works fine with max load on the CPU...

Is that with hodl? I think your CPU is an Ivybridge based on the date of release.

http://ark.intel.com/products/47927/Intel-Xeon-Processor-L5630-12M-Cache-2_13-GHz-5_86-GTs-Intel-QPI?q=L5630

I think you should be getting around 150 H with 8 threads, have you tried the other bins?
hero member
Activity: 602
Merit: 500
L5630 Westmere works just fine with AES-NI and AVX with the latest Win binaries from CMB, performance however seems a bit weird going between 10 and 100 H/s with CPU load being low. Wolfs miner works fine with max load on the CPU...
legendary
Activity: 1470
Merit: 1114
AMD
Code:
         **********  cpuminer-opt 3.3.4  ***********
     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 and Jeff Garzik.

Checking CPU capatibility...
        AMD Phenom(tm) II X4 940 Processor
   CPU arch supports AES-AVX...NO.
   CPU arch supports SSE2.....YES.
YES.
Starting mining without AES-AVX optimizations...
Something is missing there...

Intel
Code:
         **********  cpuminer-opt 3.3.4  ***********
     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 and Jeff Garzik.

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

Nothing missing just something extra, two answers to the same question.
I'm in no rush to fix it but thanks for pointing it out.
sr. member
Activity: 312
Merit: 250
AMD
Code:
         **********  cpuminer-opt 3.3.4  ***********
     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 and Jeff Garzik.

Checking CPU capatibility...
        AMD Phenom(tm) II X4 940 Processor
   CPU arch supports AES-AVX...NO.
   CPU arch supports SSE2.....YES.
YES.
Starting mining without AES-AVX optimizations...
Something is missing there...

Intel
Code:
         **********  cpuminer-opt 3.3.4  ***********
     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 and Jeff Garzik.

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