Skip to content

Commit

Permalink
Added support for AVX512.
Browse files Browse the repository at this point in the history
Fixed a bug with the log file detection.
  • Loading branch information
sp00n committed Oct 18, 2022
1 parent 12cc3a9 commit 1b45798
Show file tree
Hide file tree
Showing 4 changed files with 460 additions and 241 deletions.
25 changes: 18 additions & 7 deletions config.default.ini
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,13 @@ stressTestProgram = PRIME95


# Set the runtime per core
# You can use a value in seconds or use 'h' for hours, 'm' for minutes and 's' for seconds
# You can define a specific runtime per core, by entering a numeric value in seconds,
# or use 'h' for hours, 'm' for minutes and 's' for seconds
# Examples: 360 = 360 seconds
# 1h4m = 1 hour, 4 minutes
# 1.5m = 1.5 minutes = 90 seconds
#
# Automatic runtime:
# You can also set it to "auto", in which case it will perform one full run of all the FFT sizes in the selected
# Prime95 preset for each core, and when that is finished, it continues to the next core and starts again
# For Aida64 and y-Cruncher, the "auto" setting will default to 10 Minutes per core
Expand Down Expand Up @@ -142,6 +144,7 @@ delayBetweenCores = 15
# SSE: lightest load on the processor, lowest temperatures, highest boost clock
# AVX: medium load on the processor, medium temperatures, medium boost clock
# AVX2: heavy load on the processor, highest temperatures, lowest boost clock
# AVX512: only available for certain CPUs (Ryzen 7000, some Intel Alder Lake, etc)
# CUSTOM: you can define your own settings for Prime. See the "customs" section further below
# Default: SSE
mode = SSE
Expand All @@ -153,8 +156,8 @@ mode = SSE
# Smallest: 4K to 21K - Prime95 preset text: "tests L1/L2 caches, high power/heat/CPU stress"
# Small: 36K to 248K - Prime95 preset text: "tests L1/L2/L3 caches, maximum power/heat/CPU stress"
# Large: 426K to 8192K - Prime95 preset text: "stresses memory controller and RAM" (although dedicated memory stress testing is disabled here by default!)
# Huge: 8960K to MAX - anything beginning at 8960K up to the highest FFT size (32768K for SSE/AVX, 51200K for AVX2)
# All: 4K to MAX - 4K to up to the highest FFT size (32768K for SSE/AVX, 51200K for AVX2)
# Huge: 8960K to MAX - anything beginning at 8960K up to the highest FFT size (32768K for SSE/AVX, 51200K for AVX2, 65536K for AVX512)
# All: 4K to MAX - 4K to up to the highest FFT size (32768K for SSE/AVX, 51200K for AVX2, 65536K for AVX512)
# Moderate: 1344K to 4096K - special preset, recommended in the "Curve Optimizer Guide Ryzen 5000"
# Heavy: 4K to 1344K - special preset, recommended in the "Curve Optimizer Guide Ryzen 5000"
# HeavyShort: 4K to 160K - special preset, recommended in the "Curve Optimizer Guide Ryzen 5000"
Expand Down Expand Up @@ -211,14 +214,19 @@ maxMemory = 90
# "14-BDW ~ Kurumi" - x64, ABM, BMI1, BMI2, ADX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, FMA3, AVX2
# "17-ZN1 ~ Yukina" - x64, ABM, BMI1, BMI2, ADX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, FMA3, AVX2
# "19-ZN2 ~ Kagari" - x64, ABM, BMI1, BMI2, ADX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, FMA3, AVX2
# "20-ZN3 ~ Yuzuki" - x64, ABM, BMI1, BMI2, ADX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, FMA3, AVX2
#
# The following settings would be available as well, but they don't run on Ryzen CPUs!
# The following settings are available as well, but they seem to be intended for Intel CPUs and don't run on Ryzen 3000/5000 CPUs
# "11-BD1 ~ Miyu" - x64, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, ABM, FMA4, XOP
# "17-SKX ~ Kotori" - x64, ABM, BMI1, BMI2, ADX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, FMA3, AVX2 AVX512-(F/CD/VL/BW/DQ)
# "18-CNL ~ Shinoa" - x64, ABM, BMI1, BMI2, ADX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, FMA3, AVX2 AVX512-(F/CD/VL/BW/DQ/IFMA/VBMI)
# "17-SKX ~ Kotori" - x64, ABM, BMI1, BMI2, ADX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, FMA3, AVX2, AVX512-(F/CD/VL/BW/DQ)
# "18-CNL ~ Shinoa" - x64, ABM, BMI1, BMI2, ADX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, FMA3, AVX2, AVX512-(F/CD/VL/BW/DQ/IFMA/VBMI)

# The follwing setting is intended for Ryzen 7000 CPUs and doesn't run on Ryzen 3000/5000 CPUs
# "22-ZN4 ~ Kizuna" - x64, ABM, BMI1, BMI2, ADX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, FMA3, AVX2, AVX512-(F/CD/VL/BW/DQ/IFMA/VBMI/GFNI)
#
# "00-x86" should produce the highest boost clock on most tests
# "19-ZN2 ~ Kagari" is optimized for Zen2/3, but produces more heat and a lower boost clock on most tests
# "19-ZN2 ~ Kagari" is optimized for Zen 2/3 (Ryzen 3000/5000), but produces more heat and a lower boost clock on most tests
# "22-ZN4 ~ Kizuna" is optimized for Zen 4 (Ryzen 7000) and uses AVX-512 instructions (it will crash if no AVX-512 is supported on your CPU)
# Default: 00-x86
mode = 00-x86

Expand Down Expand Up @@ -261,6 +269,9 @@ CpuSupportsAVX2 = 0
# This also needs to be set to 1 for AVX2 mode on Ryzen
CpuSupportsFMA3 = 0

# This needs to be set to 1 for AVX512 mode
CpuSupportsAVX512 = 0

# The minimum FFT size to test
# Value for "Smallest FFT": 4
# Value for "Small FFT": 36
Expand Down
10 changes: 5 additions & 5 deletions readme.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,13 +29,13 @@ Also, PBO technically voids the warranty of your CPU, so use it at your own risk

INCLUDED SOFTWARE
-----------------
The script itself is a PowerShell script, but it uses the included Prime95 version 30.5b2 to actually do the stress
The script itself is a PowerShell script, but it uses the included Prime95 version 30.8b17 to actually do the stress
testing. You can also move your own copy of Prime95 into the /test_programs/p95 directory if you want to be on the
safe side (good choice!).
To download Prime95, go to the official site at https://www.mersenne.org/download/ (however, the 30.5 version used
here is at the time of writing only available through their forum).

Beginning with version 0.8 it also supports Aida64 and Y-Cruncher, however it does NOT include Aida64 by default.
Beginning with version 0.8 it also supports Aida64 and y-Cruncher, however it does NOT include Aida64 by default.
You need to download the >>>Portable Engineer<<< version yourself and extract into the /test_programs/aida64 folder. It
has to be the Portable Engineer version, because the regular "Extreme" edition doesn't support starting the stress test
from the command line.
Expand Down Expand Up @@ -121,8 +121,8 @@ in the config.ini to enable two threads as well.
TROUBLESHOOTING & FAQ
---------------------
Q: My computer crashes when running this program!
A: Very likely your Curve Optimizer setting is unstable. Change the settings to a higher value (e.g. from -15 to -12)
and try again.
A: Very likely your Curve Optimizer setting is unstable. Change the settings to a higher resp. less negative value
(e.g. from -15 to -12) and try again.

Q: How long should I run this for?
A: Basically as long as you can. If you aim for a "12h prime-stable setup", you'd need to run every single core for
Expand All @@ -134,7 +134,7 @@ A: Short answer: all of them.
Long answer: I've defaulted this to Prime95 without AVX and AVX2 and "Huge" FFTs. The reason behind this is that
this *should* produce the least amount of heat and therefore the highest boost clock. But you should eventually run
all of the tests to make sure that you're really error free.
Also switchting from Prime95 to Y-Cruncher or Aida64 produces different load scenarios, which can prove useful in
Also switchting from Prime95 to y-Cruncher or Aida64 produces different load scenarios, which can prove useful in
detecting instabilities.

Q: Why are you using SSE? AVX stresses the CPU much more!
Expand Down
Loading

0 comments on commit 1b45798

Please sign in to comment.