How to make AM5 POST not ridiculously long?

I have this setup:

Fedora Linux 39 KDE
Ryzen 7900 with NoFan CR-80EH and Thermal Grizzly AM5 short backplate
MSI Tomahawk X670E with earlier available BIOS
Radeon 6400 with Accelero S3
4x 32GB G.Skill RAM 6000MHz CL30
Creative X-Fi Titanium
OWC 10Gb NIC
SeaSonic 500W fanless PSU
2 NVM SSDs
HDD swap tray
BluRay writer
1 FullHD display, 1 4K UHD display
1 HDReady camera
USB keyboard and mouse
Modecom Oberon Pro

I’ve enabled memory context restore, disabled EXPO, and it can still take 10-20 minutes for the damn thing to POST. What else can be done to improve these POST times? Did AMD seriously see these results and were like “yeah that will show those Intel guys how it’s done”?

2 Likes

i can’t turn context restore on on my proart creator because it turns into a crashy mess, but 10-20 minutes?!

are you sure or is that an exaggeration

i’d be starting to eliminate hardware at that point

also, have you installed the ram in the correct slots?

also remove 2 sticks and see if it quickens up a bit

Yeah there’s only 4 slots and 4 RAM sticks :smiley:

yep my bad i misread that

am5 hates 4 sticks, it’s annoying but i’d try with 2

Make sure you enable DRAM Power Down while Memory Context Restore is enabled. Otherwise, it will BSOD constantly.

1 Like

oh I did not know that cheers, I’ll give that a go

If it’s taking anywhere near 10 minutes to POST then it’s retraining every time. Probably means the configuration isn’t fully stable.

128GB is a big ask for Zen 4, if you disabled EXPO then make sure you are manually setting the correct voltages, because you should still be using the EXPO voltages even if you are running at 4800.

Hmmm? There are several users here including myself running 128Gbyte on AM5 just fine and it doesn’t take more than like 2-3 minutes to train during boot in worst case.

I’m going to guess that most boils (as this seems to be a common culprint) using memory not following JEDEC.

What does that mean? How old is the bios/what is the AGESA version?

I recall there were older BIOS where memory context restore was not properly working, that could explain your issue? Try a newer bios and see…

This is ridiculous. My wife’s 5700X POSTs in mere seconds with exactly this much RAM. How is the 7900 supposed to be an upgrade over the 5700X then? Not even fragmented ATA-33 HDDs took this long to boot.

2 Likes

I’m in a somewhat similar situation: Use the S3 sleep/stand by mode to be able to immediately use the system again (have a system with a 7800X3D and 4 x 32 GB DDR5-5600 ECC UDIMMs).

Probably because you’re comparing DDR4 to DDR5, it’s different topology, different bus configuration, and you most likely weren’t running 128GB of DDR4 at the same frequency.

AMD is upfront about this. Go to AMD’s 7900 page and it says:

Max Memory Speed
2x1R	DDR5-5200
2x2R	DDR5-5200
4x1R	DDR5-3600
4x2R	DDR5-3600

So you should be running it at 3600. Feel free to go check Wendell’s videos and the various forums threads about high capacity on Zen 4. In one video like 6 months back Wendell admits he couldn’t even get DDR5-4000 fully stable with 128GB via tuning it. Maybe he has since that video, UEFI updates have certainly continued to improve the situation since then. But if the crazy POST time bothers you start at 3600 and see if it goes away. If it does then you can tweak it from there and see where the limit is at.

1 Like

I can compare everything I tried to DDR5:

  • SDRAM
  • XDR
  • DDR1
  • DDR2
  • DDR3 (this is the only one I don’t have at hand, but had in the past)
  • DDR4

From my experience, DDR4 and DDR5 are entirely alone in having those incredible issues. All those other memories are POSTing almost instantly. When I first had my Ryzen 2700, it too would make excuses not to use XMP profiles on the CL14 RAMs I bought. It seems that it’s always an early adopter tax with all Ryzen generations :frowning:

Of course, because it’s part of the memory standard. Memory training was added in DDR3, but it was minimal. It was expanded on with DDR4 to handle the higher frequencies, and now at DDR5’s frequencies memory training is pretty much required for stable operation. Take away the memory training and your system wouldn’t even be booting at all. Again if you want to fix it so it trains once and is done then you need to run the RAM in a stable configuration.

1 Like

EDIT: Never mind, misread your CPU as 7000 series. AM4 is DDr4 platform. Comparison measurements are still welcome.

Wait, seconds ? Seriously, how did you or wife achieve that?

Would you mind sharing specs, settings and if possible screenshot of startup app or systemd-analyze output?

Its pretty amazing result. It been major point of annoyance for me and I havent found any way to get bios part of boot to get under 20s at all. Insane compared to older intel board, where you can optimize to <5s seconds easily.
Its massive improvement compared to MCR off, which takes around 60-90s with 2x16 dimms on this board.

For example on Gigabyte B650 board with 2x16 DDR5 6000 with CR on and EXPO off this is the absolute best I can achieve:

Windows:

Fedora

Startup finished in 20.257s (firmware) + 2.125s (loader) + 3.967s (kernel) + 3.096s (initrd) + 10.552s (userspace) = 39.999s 
graphical.target reached after 2.162s in userspace.

@grepwood
Posto your systemd- analyze and plot for comparison, then try following:

  • Update your uefi to latest available and then turn Memory context restore + dram power down
    • early bios version were unstable with MCR, combined with all 4 slots occupied it may force retraining all the time
    • memory training time is almost directly proportional to amount of memory
    • do a memtest run just in case, my early bios trained unstable memory timings
  • remove 2 sticks to run 1 dimm per channel config, which is the easiest and recommended mode to run AM5 platform.

I’m gonna try suggesting something new: could it be one of the add in cards or USB devices that’s making the BIOS hang for that long because they have issues initializing on AMD?

If it takes 10 to 20 minutes to boot there must be something wrong with the system, no doubt.

I would’ve guessed it’s XMP training due to the speed and capacity of the kit, but that has been ruled out if I red through the thread right.

@greatnull My 3700X with XMP off, undervolt, 2x16GB sticks, X570 chipset and 2 NVME drives reports 15.5s last BIOS time in Windows. I think it doesn’t get much better than that.

Let me blow you mind on plain 2012 era zenbook:

Thats how optimized uefi should behave 1,5-3s, depending whether fastboot was on.

And this is “modern” dell xps with fastboot on:

10s invariant to any setting. When I first turned it on, i thougt it was DOA. Nope, it just booted so slow :frowning:

2 Likes

Yeah seconds, her setup is really quick.
CPU: Ryzen 5700X with NoFan CR-80EH
MB: Asrock B550 Phantom Gaming 4 with stock BIOS
RAM: 4x32GB KF3200C16D4/32GX
GPU: Radeon 6400 with Accelero S3
NIC: OWC 10G
PSU: Seasonic, fanless
Sound: Creative X-Fi
HDD: Crucial P5 M2 SSD
OS: Fedora KDE
BIOS settings: except for disabling onboard sound and network we felt no need to do anything further

The results are:

root@Wanilia:~# systemd-analyze 
Startup finished in 30.347s (firmware) + 6.719s (loader) + 2.968s (kernel) + 6.904s (initrd) + 9.054s (userspace) = 55.994s 
graphical.target reached after 9.047s in userspace.

I updated the BIOS on the AM5 system and it’s slightly better. It’s now 5, maybe 10 minutes instead of 20. EXPO is still disabled. Unhinged overclocking clown show is disabled. While it works with a 1GHz downclock and 0.16V undervolt, I still feel scammed out of my hard earned money because the RAM advertises the capacity to run stable at 6000MHz but can only operate stable on 3600MHz. What’s worse is that I can’t debug why it won’t do 6000MHz because in the 40 years of time we had POST nobody who designs motherboard firmware thought it’s pretty bad that POST doesn’t give the user any feedback on progress and errors.

I don’t have systemd on my personal system because it’s Gentoo. Is there an alternative?

Yup bootchart was the goat before systemd-analyze, if my memory does not fail me it was merged into systemd and extended into systemd-analyze (no guarantees, it has been more than decade since I used it last time).

https://wiki.archlinux.org/title/Bootchart#Bootchart2

Startup finished in **30.347s (firmware)**

So your AM4 uefi is also dog slow :frowning: . If I discount uefi init part on my AM5, then my boot time is nearly good enough too.

If you want to play arout, there are some shortcuts to consider (from default fedora point of view):

  • dm and lvm service are active by deafult, but may not be strictly necessary depending on your setup
    • same for isci , nfs server …
  • NetworkManager wait online might be blocking startup until it connect to you network (i.e wait-online unit), unless you need net online to login to your session, disable it and let in run asynchronously
  • initrd/initrafs is not stricly neccesarry if you do not use encryption, you can boot directly to kernel, if you specify root partition and root fs type
  • its possible to even remove grub and boot kernel directly from uefi engine (havent tried this yet)