There are a couple of issues that I would like some advice on from the community. I will make seperate posts
so the discussion doesn't get garbled.
The first issue is compiling an optimum build for early CPUs with AES support. These are Intel CPUs between
core2 and Sandybridge including Westmere as well as similar AMD CPUs.
This is primarilly intended for users mining with such CPUs but may also be of interest to others.
I recently discovered the AES optimizations I have been using extensively use AVX1 instsructions as
well as AES. AES was implemented on CPUs before AVX1. The CPU capabilities check in cpuminer-opt
prior to v3.3.2 did not make this disctinction. It assumed if the CPU has AES it could use the AES code in
cpuminer-opt.
This results in users with these CPUs, particularly user using the CMB binaries, seeing the following message
on miner startup:
CPU and algo support AES-AVX1, but SW build does not.
Rebuild with "-march=native" for better performance.
One user has reported that the Westmere precompiled binary appears not to be compiled for AES and AVX1.
It isn't clear why. That's where i need your help if you have one of these CPU. Linux, Windows, self compiled
or prebuilt binaries, it doesn't matter. If you have a CPU in the Westmere family between core2 and Sandybridge
you can help a lot.
Please post:
- your CPU model and confirmation whether it has AES and or AVX (may also be called AVX1) if possible.
- whether and how you compiled or if you used a binary which one
- the miner output at startup showing the CPU capabilities check
- whether it mined successfully
- any other info you think is useful
Thank you in advance.
Edit: Another option is to abandon the rebuild check. It is intended to catch precicely the type of situation that
may currently exist with Westmere CPUs possibly getting lower than optimum performance. However, it seems to
be causing more grief than it's worth, partly because it was not correctly implemented. Users thought the rebuild
message was an error and meant the miner wasn't working.
Even if the rebuild check is working properly an attempt to use the existing Westmere Windows build will result
in complaints likely coming to me when they should be directed at the builder.
I'll wait to see the reaction is to v3.3.3, if there are still problems with the rebuild check, it's gone.