Which precompiled version should I use?
As of version 2.12, the following precompiled versions are available:
MSVC
ICCC
yafu-x64-sse41.exe
yafu-x64-avx2.exe
yafu-x64-avx512.exe
yafu-x64-avx512-ifma.exe
yafu-x64-intel-sse41.exe
yafu-x64-intel-avx2.exe
yafu-x64-intel-avx512.exe
yafu-x64-intel-avx512-ifma.exe
SSE41, AVX2, AVX512, and AVX512-IFMA refer to instruction set extensions that the versions respectively support.
SIQS, ECM, and YAFU's prime sieve all get progressively faster with more modern extensions.
See here for more information:
https://en.wikipedia.org/wiki/Advanced_Vector_Extensions
https://en.wikipedia.org/wiki/AVX-512#CPUs_with_AVX-512
The "Intel" versions are compiled with Intel C++ Compiler Classic and may be
slightly faster than the equivalent MSVC-compiled version.
They should work on Zen4 or newer AMD CPUs (but possibly not older AMD).
Pick the best one that your CPU supports.
Roughly speaking:
If you have an Ice Lake, Tiger Lake, Rocket Lake, or Sapphire Rapids CPU, use AVX512-IFMA .
If you have an Intel SkylakeX or certain Cannon Lake or Cascade Lake CPUs, use AVX512 .
If you have an Intel Haswell CPU or newer (newer than 2013), use AVX2 .
If you have a Zen4 or Zen5 AMD CPU, use AVX512-IFMA .
If you have another AMD CPU newer than 2015, use AVX2 (MSVC) .
Otherwise use SSE41 .
File Name File Size Date Modified Hash MD5 SHA1 SHA256 yafu-x64-avx2.exe 2,333,696 2025-01-03 0f13014547ea8953b725b9ff4e0b301e 8aae990fd8b485c077636a1598a75828dc6e9849 ad556e14161ffc9bab849a4c6d5df56425db73f9b1d850c08acade7f6860088d yafu-x64-avx512-ifma.exe 2,561,024 2025-01-03 4fa9feae3d576f1cf6009f40d635de30 6c932004c85a51e4e857bf915383598fd5c6d206 11dd0e37f99a5d8ee0caa363d63073de01f00362838b0671aa67cb7f748af502 yafu-x64-avx512.exe 2,718,208 2025-01-03 cc587eaf031a384705b6a2774db72462 4a0d7061894c40541a92ba97a3cc465d93d14fa8 a5eb5268a17133c452bc2ebf8b8205c261b33a7c66ae6cd692ed04ba940af4b0 yafu-x64-sse41.exe 2,286,592 2025-01-03 e5283b8113d3637777723e426f780c49 589603964a5b417028c7bf3ac11a7a5684a63e28 95d884ed682eca06af0f4c6edb40c7d1bdd3cfca4aaae9cdc7e2febc4e4f8425 yafu-x64-intel-avx2.exe 4,239,360 2024-12-09 23a99b25d8d6858d4666971ec1d61c8a 6e5a7e958c36fea4dae2dd0fd432bb3dd59a0568 7e9f2caa6e15f9650360e0c51cca2061899810001a342c92154fefb98cbb7e7c yafu-x64-intel-avx512-ifma.exe 4,591,104 2024-12-09 377db7d939dfe78cb8277e4b5251d6b3 635445a648fe8eb58960f18607192f14cf583bdb c85a40e7eae32e8e203eb5f3a1aee3d5814899317d7beb8967fff456213e1c43 yafu-x64-intel-sse41.exe 4,067,840 2024-12-09 0f88a15470fdb93999a425d10cd13a0b fdb27572d7f90e85a0a1fbfaf1a25540311c6de1 57baf90ae143cdfbacaf6eb503693c8f3eabdeeee6215689af3d613d7a0129a8 yafu-x64-intel-avx512.exe 4,716,032 2024-12-09 398d2002e1e7d7a8022af33394fb6ddc 6814dd206ab9ca8dba8aa24f9260c35e7c0e0a17 64e2f995821adc27d494a54a422cc612f24adea4755e4516dc6e04988ac2d92a README.txt 9,471 2024-11-11 f2b230f1722d00d6fbddadea1664ca34 c401d21fbb23340ed6a7eeab4565c3060be6e114 d0837b062212957bfd0cd9246cfbfc033225d345aebdc31e9c44c861613eb12a