Finally: Overclocking EPYC Rome ES

irgen

New Member
Jan 14, 2021
26
4
3
have not found any UEFI bitmap entry in the rome section. there is only core control
core bitmap definitely works, i was able to change core count from 12 to 16, playing with the values in core bitmap section. Just cant get it how it works in tandem with CCD Control option. There's 3 CCD Control menus
 
  • Like
Reactions: RolloZ170

irgen

New Member
Jan 14, 2021
26
4
3
@ExecutableFix RomeOverclocker 1.0.1 on githab crashes on 1809 and does not start at all on fresh install of 20H2 .. But 1.0 version works ok
could someone check that
 

irgen

New Member
Jan 14, 2021
26
4
3
Just want to share interesting observation. I found out that system goes black screen when i give 100% load on core 4 and possibly 7. So i tried to disable those cores with CoreBitmap but no luck. So what i did is set the CPU to 4xCCD and 3x3 cores in bios, which gave 24 cores and 128mb cache config.
Edit I think i'll just leave it like that, until we get some way to disable individual cores like they did in ryzen master.
 
Last edited:

haswelliris

New Member
Feb 24, 2021
1
0
1
Linux tools can be modified, however I'm working on a better detection, since Epyc and Desktop Threadripper 3000 series (Castle Peak) share the same basic cpuid, so another more complicated detection mechanism should be implemented - at least socket type detection is needed.

If you want, you can try the modified code, however for now it works on Epyc or on TR - not on both at the same time, since command IDs are different.
Attached is the modified version of my Zenstates-Linux fork: irusanov/ZenStates-Linux

It had been tested on a ES Epyc and it worked, but this version is unofficial until I sort out the cpu detection. Ofcourse, as always, everyone is free to contribute.

You can first try to set a different frequency and if it works, proceed following the guide and mess with rest of the things. For the test, please use the CLI, then you can use the GUI as well.

Code:
sudo ./zenstates.py --no-gui --oc-frequency=2000
Frequency works in 25MHz steps.
Be extremely careful with voltage. Make sure you have something to monitor it with - preferably a multimeter to check the actual voltage. Zenmonitor seems to be the best currently available on Linux, but I'm not sure if it displays correct info on Epyc: ocerman/zenmonitor


MD5: 0c2fe08b1dd06bfb29f834206d95ba18
Hi,
Now I'm using dual socket motherboard h11dsi and my cpus are two 32C epyc zs1711. In my case, it seems that zenstates only affect the cpu1 . The cpu2 is NOT overclocked.
I noticed that zenstates has NO params like "dual sockets". So how to using zenstates in dual socket system?

If using the latest version in github repo and run "./zenstates.py --no-gui --oc-enable --oc-frequency 3000 --ppt 1500 --tdc 600 --edc 600", it's just not working and the frequency is still base frequency. Is there any guide for overclocking zs cpus in Linux?
 
Last edited:

Brainbug

New Member
Jul 5, 2015
12
2
3
52
@haswelliris Zenstates Linux does support dual cpu, but I had issues running the latest github version from the command line as well. I ended up modifying both the "_cpuid" function for rome, for my ES CPU as some of the registers were different, as well as the parser, since certain arguments worked using the GUI but seemed to be ignored from the command line.

I don't have a dual CPU mainboard, but to troubleshoot, you should look at adding a couple debug statements to the CPU detection routines in zenstates.py. Adding a couple of debug statements to the existing zenstates.py, in order to check that the dual cpu is being properly detected

Code:
isOcFreqSupported = False
cpu_sockets = int(os.popen('cat /proc/cpuinfo | grep "physical id" | sort -u | wc -l').read())

def writesmureg(reg, value=0):
    os.popen('setpci -v -s 0:0.0 b8.l={:08X}'.format(reg)).read()
    os.popen('setpci -v -s 0:0.0 bc.l={:08X}'.format(value)).read()

    if cpu_sockets == 2:
        print("Writesmureg, two sockets")
        os.popen('setpci -v -s A0:0.0 b8.l={:08X}'.format(reg)).read()
        os.popen('setpci -v -s A0:0.0 bc.l={:08X}'.format(value)).read()


def readsmureg(reg):
    os.popen('setpci -v -s 0:0.0 b8.l={:08X}'.format(reg)).read()
    output = os.popen('setpci -v -s 0:0.0 bc.l').read()

    if cpu_sockets == 2:
        print("Readsmureg, two sockets")
        os.popen('setpci -v -s A0:0.0 b8.l={:08X}'.format(reg)).read()
        os.popen('setpci -v -s A0:0.0 bc.l').read()

    return hex(output[-9:][0:8])
 

mirrormax

Active Member
Apr 10, 2020
123
45
28
this needs to be stickied to OP, hidden deep in the thread.

Based on @ExecutableFix's open source Windows tool, I modified @I.nfraR.ed's ZenStates for Rome ES on Linux and added a few missing features. My version comes with these improvements:

1. Read/Write PCI config space directly in Python instead of using setpci. I found that setpci sometimes does not work reliably (probably due to race conditions), and in one occasion it wrote a wrong VID (0x0, =1.55V) that almost killed my CPUs.
2. Dual socket support.
3. Implement some missing features, including frequency lock/unlock and reverting to default voltage/frequency.
4. Add a few preset scripts (e.g., see preset_multicore.sh) that work well on my H11DSi with dual ZS1406E2VJUG5 (untested on other systems, so you may need to adjust them for your use case).

Here is my modified ZenStates on Linux. Note that I only used/tested the CLI on a headless server and I did not use the GUI.
 

xuw

New Member
Dec 23, 2020
5
0
1
I have 1 x ZS1711E3VIVG5 and the H11DSI-O rev 2.0 (dual socket) motherboard.
Just tested the CPU, won't boot though. Is there a need for 2 x CPUs ?
POST snoop in IPMI shows only FF. Have tried the modded bios provided by the op, newest bios, still no go.

Any suggestions or tips? :)
thanks!
 

i386

Well-Known Member
Mar 18, 2016
2,568
724
113
32
Germany
dual socket boards need both cpu's populated to post
That's incorrect, you can boot many (if not all) systems with just one cpu installed. The second cpu is required to access all memory and pcie slots.
(Check the mainboards/systems block diagram to see what won't work if just one cpu is installed)
 

dragonian

Member
Jan 3, 2020
31
15
8
According to others in this thread... that is not the case.. at least with ES parts.

Can the ES/QS Rome CPUs be used in a single configuration on a dual board?
No, unfortunately not as with all the engineering samples
They will work on dual socket motherboards if they're installed with two sockets populated, not if only one is populated. This holds true for both Naples and Rome engineering samples
 
  • Like
Reactions: Layla

Layla

Game Engine Developer
Jun 21, 2016
131
87
28
37
That's incorrect, you can boot many (if not all) systems with just one cpu installed. The second cpu is required to access all memory and pcie slots.
(Check the mainboards/systems block diagram to see what won't work if just one cpu is installed)
These aren't just any old CPUs...
 

Quantum

New Member
Nov 30, 2019
23
6
3
I am selling some ROME ES chips

I have tested these on a DELL R7515 and can confirm they work.

I have 6 units to sell.

Please contact me if interested.
 
Last edited:

bayleyw

Active Member
Jan 8, 2014
108
31
28
Do you know if putting these in a Dell server causes them to become locked to Dell platforms? I had heard rumors that Dells blow the security fuses on the first boot.
 

Quantum

New Member
Nov 30, 2019
23
6
3
Do you know if putting these in a Dell server causes them to become locked to Dell platforms? I had heard rumors that Dells blow the security fuses on the first boot.
Do you have more info on this?

I never heard of it.
 

xuw

New Member
Dec 23, 2020
5
0
1
I am selling some ROME ES chips

I have tested these on a DELL R7515 and can confirm they work.

I have 6 units to sell.

Please contact me if interested.
Only selling by auction on eBay or selling here as well? Could you DM prices for a pair of 64c rome and a single 32c rome? Thanks
 

Quantum

New Member
Nov 30, 2019
23
6
3
Do you know if putting these in a Dell server causes them to become locked to Dell platforms? I had heard rumors that Dells blow the security fuses on the first boot.
I think these CPU's are vendor locked to DELL because I could only get them to boot on DELL systems. That makes me mad at AMD for allowing this.

I have 4x 32 core CPUs remaining and will sell them for $400/ea + shipping. DM me if you are interested.

A compatible DELL system is USD $1679. Dell EMC PowerEdge R7515 Rack Server | Dell USA
I have the downgrade firmware and can share it.
These chips could be good for that.
 

Spartus

Active Member
Mar 28, 2012
201
31
28
Toronto, Canada
I think these CPU's are vendor locked to DELL because I could only get them to boot on DELL systems. That makes me mad at AMD for allowing this.

I have 4x 32 core CPUs remaining and will sell them for $400/ea + shipping. DM me if you are interested.

A compatible DELL system is USD $1679. Dell EMC PowerEdge R7515 Rack Server | Dell USA
I have the downgrade firmware and can share it.
These chips could be good for that.

I saw your first post and was about to make you an offer on 4x32, but now I see that there are dell locked and that's a total deal killer. The platform will cost way more than the CPUs. Ugh! Sorry man, hope you find a buyer.
 
  • Like
Reactions: NablaSquaredG