Skip to content

primecount-6.2

Compare
Choose a tag to compare
@kimwalisch kimwalisch released this 07 Jan 16:50
· 1593 commits to master since this release

This is a minor new release, the API and ABI (Application binary interface) are backwards compatible.

The sieving algorithm has been improved by annotating branches with likely/unlikely and __builtin_unreachable(). This improves the performance of the S2_hard and D formulas by up to 5%. GCC benefits most from these changes (Clang's performance was already very good before). With this release there is also a new primecount-backup version (last primecount-backup release was 6.0).

In order to reduce the amount of work for myself there will be no precompiled binaries anymore going forward (except for Windows). You can now install primecount using your operating system's package manager (if it is available there) or by compiling it from source yourself.

ChangeLog

  • Use Appveyor-CI instead of Travis-CI for testing.
  • README.md: primecount can now be installed using package managers.
  • Sieve.cpp: Annotate branches with unlikely, up to 5% speedup.
  • Sieve.cpp: Annotate switch cases with fallthrough.
  • AC.cpp: Reduce number of function paramaters.
  • AC_libdivide.cpp: Reduce number of function paramaters.
  • B.cpp: Improve GCC performance.
  • P2.cpp: Improve GCC performance.
  • popcnt.hpp: Improve GCC performance.