ASRock Rack EPYC4000D4U MCIO question

What sort of information do you need about the performance requirements?

edit: I have one. No bottlenecks. Bottlenecks are the worst thing for me. They don’t let me sleep at night.

I only use SATA devices in this server.

Do you mean that I can operate SATA devices with the appropriate cable on this MCIO ports? Please don’t give me false hope.

I have already ordered ECC RAM and will test it.

Unfortunately, I forgot to specify the graphics card for the Jellyfin transcoding in the server details. I’m sorry about that. This would leave only one PCIe 2.0 x1 slot available. It would be just enough for an SSD. However, I would like to set up a mirror for the SSD. To do this, I would have to buy a second controller for the second SSD. Would the bandwidth of the B450 chip be sufficient for this? There are four SATA HDDs (SATA board ports) and two SATA SSDs (two SATA controllers on PCIe 2.0 x1). Bottlenecks must not occur under any circumstances.

Hopefully it is ECC unbuffered DIMM (UDIMM).

You could also replace M.2 SATA SSD with a M.2 5x/6x SATA Controller:
https://www.amazon.de/s?k=m.2%20sata%205x%206x
Up to 4 SATA drives would have almost max. SATA bandwidth. So you have 4+4 SATA ports.

What’s the use case and workload?
How many simultaneous users? One? A handful? One hundred?
Pure storage, or also apps? If so which kind? The usual light home stuff? Two dozens full featured VMs? A local AI server handling a LLM of X gazillon parameters?
Anything to size the server…

Then I have bad news for you: Chasing bottlenecks is a vicious game of Whack-A-Mole. And the game is rigged so that you never, ever, win.

Here comes one significant requirement… You can:

  • Forget AMD and get an Intel CPU with an iGPU to leverage QuickSync. (Check the generation depending on the codecs you want to handle.)
  • Add a cheap Arc dGPU to any CPU you want—requires a PCIe slot.
  • Forget hardware transcoding and do it by brute force on the CPU—for occasional use, it just works.
2 Likes

Not all M.2 sata controllers are equal.

There have been complaints about some variants that use JMicron and/or port multipliers.

Other variants that use Asmedia controller apparently work better.

2 Likes

This is an unreasonable expectation.
There will always be a bottleneck somewhere.

2 Likes

You would have to check with ASRockRack.

They certainly make some boards where this is possible, the language used is “1 MCIO (PCIe3.0 x8 or SATA 6Gb/s)” and that is not used on the one you are interested in.

(In the linked case it is a chipset feature)

…and the EPYC4000D4U board has no chipset.

A certain Linus S posted a video using this board just the other day, if you find watching build Linus in a build video interesting…

Different use-case though.

1 Like
# dmidecode 3.4
Getting SMBIOS data from sysfs.
SMBIOS 3.3.0 present.

Handle 0x0028, DMI type 16, 23 bytes
Physical Memory Array
        Location: System Board Or Motherboard
        Use: System Memory
        Error Correction Type: Multi-bit ECC
        Maximum Capacity: 128 GB
        Error Information Handle: 0x0027
        Number Of Devices: 2

Handle 0x002F, DMI type 17, 92 bytes
Memory Device
        Array Handle: 0x0028
        Error Information Handle: 0x002E
        Total Width: 128 bits
        Data Width: 64 bits
        Size: 32 GB
        Form Factor: DIMM
        Set: None
        Locator: DIMM_A1
        Bank Locator: BANK 0
        Type: DDR4
        Type Detail: Synchronous Unbuffered (Unregistered)
        Speed: 2666 MT/s
        Manufacturer: Avant
        Serial Number: 00000000
        Asset Tag: Not Specified
        Part Number: W724GU44J2320NA
        Rank: 2
        Configured Memory Speed: 2666 MT/s
        Minimum Voltage: 1.2 V
        Maximum Voltage: 1.2 V
        Configured Voltage: 1.2 V
        Memory Technology: DRAM
        Memory Operating Mode Capability: Volatile memory
        Firmware Version: Unknown
        Module Manufacturer ID: Bank 6, Hex 0xF7
        Module Product ID: Unknown
        Memory Subsystem Controller Manufacturer ID: Unknown
        Memory Subsystem Controller Product ID: Unknown
        Non-Volatile Size: None
        Volatile Size: 32 GB
        Cache Size: None
        Logical Size: None

Handle 0x0032, DMI type 17, 92 bytes
Memory Device
        Array Handle: 0x0028
        Error Information Handle: 0x0031
        Total Width: 128 bits
        Data Width: 64 bits
        Size: 32 GB
        Form Factor: DIMM
        Set: None
        Locator: DIMM_B1
        Bank Locator: BANK 1
        Type: DDR4
        Type Detail: Synchronous Unbuffered (Unregistered)
        Speed: 2666 MT/s
        Manufacturer: Avant
        Serial Number: 00000000
        Asset Tag: Not Specified
        Part Number: W724GU44J2320NA
        Rank: 2
        Configured Memory Speed: 2666 MT/s
        Minimum Voltage: 1.2 V
        Maximum Voltage: 1.2 V
        Configured Voltage: 1.2 V
        Memory Technology: DRAM
        Memory Operating Mode Capability: Volatile memory
        Firmware Version: Unknown
        Module Manufacturer ID: Bank 6, Hex 0xF7
        Module Product ID: Unknown
        Memory Subsystem Controller Manufacturer ID: Unknown
        Memory Subsystem Controller Product ID: Unknown
        Non-Volatile Size: None
        Volatile Size: 32 GB
        Cache Size: None
        Logical Size: None

I think ECC works.

Mushkin Proline DIMM 32GB, DDR4-3200, CL22-22-22-52, ECC

Someone on this forum posted, that these boards are not good.

Workload: Docker apps and media storage
Docker apps: jellyfin, vaultwarden, nextcloud (comming soon), paperless-ngx (comming soon), mailcow (comming soon)
users: first only me, but I will expand it to my family (up to six users, randomly simultaneous)
Apps are sitting on a 1TB 2,5" SSD (will be mirror as soon as the new ssd arrives), media is sitting on a 20TB 3,5" SATA drive (will be migrated to RAIDZ1 as soon as the new board arrive)

I also wanted HDR tone mapping. That works only with dGPU according to jellyfin docs.

Gotcha! Thx

2 Likes

I asked ChatGPT. It seems to be OK. What’s your opinion?

Can you see any errors?

ChatGPT:
From the dmidecode output you've provided, there are no obvious errors in the memory configuration. Everything appears normal and healthy, but let's double-check all relevant sections for any red flags or inconsistencies:

✅ Memory Array (Handle 0x0028)
Location: System Board

Use: System Memory

Error Correction Type: Multi-bit ECC → Good; system supports ECC.

Maximum Capacity: 128 GB

Number Of Devices: 2 → Matches the 2 installed modules.

✔️ No errors here.

✅ Memory Devices (Handles 0x002F and 0x0032)
Both DIMMs (DIMM_A1 and DIMM_B1):

Size: 32 GB each → Correct.

Speed: 2666 MT/s → Matches between both modules.

ECC: Total Width = 128 bits, Data Width = 64 bits → Indicates 64 bits for data + 64 bits for ECC, which is normal for ECC RAM.

Type Detail: Unbuffered (Unregistered) → Acceptable if the motherboard supports UDIMM ECC.

Voltage: All voltages are 1.2V → Normal for DDR4.

Serial Number: 00000000 → Odd, but not necessarily an error. Some manufacturers (especially less-known brands like Avant) use generic or unset serials.

Firmware Version / Product IDs: Marked as "Unknown" → Common for generic or non-enterprise RAM; not necessarily an error.

✔️ No mismatch in part numbers, size, or speeds between modules.
✔️ ECC is enabled and consistent across both sticks.

⚠️ Minor Anomalies (but not errors):
Serial Numbers = 00000000
→ This is unusual, but not critical. It may indicate:

A budget memory module.

Poor SMBIOS implementation by the manufacturer.

Generic SPD programming.

Firmware Version: Unknown / Product IDs: Unknown
→ Again, this is common in non-brand or lower-cost memory and doesn’t mean the RAM is faulty. However, it might make diagnostics or RMA trickier.

🧪 Want to Be Thorough?
To really confirm there are no memory errors at runtime:

Run a memory test, e.g.:

memtest86+ from boot.

stressapptest or memtester from within Linux.

Check system logs:

bash
Kopieren
Bearbeiten
dmesg | grep -i ecc
journalctl -k | grep -i error
✅ Conclusion
Your dmidecode report shows a healthy, properly configured memory system with:

Correct ECC configuration,

Matched modules,

No size/speed/voltage issues,

No BIOS reporting errors.

The only oddities are cosmetic (serial numbers and missing metadata), but these are not functional errors.

Let me know if you'd like help running a live memory test or checking logs for ECC events.

Well ASM1166 chips are seemingly well as outlined here:


It definitely does:

        Error Correction Type: Multi-bit ECC

You could do a round of MemTest86(+) just to make sure DIMMs are running well. MemTest86(+) also tells if ECC is active.

1 Like

This strikes me as wrong. Data width should indeed be 64 bits, but the ECC should only add 8 bits for a total of 72. Your chatbot is drawing the wrong conclusion here.

I think this is possibly a reporting issue with dmidecode reading something wrong or your BIOS responding in an unexpected way.

It could also be that dmidecode is presenting the combined width of the two modules, so 64 + 64, which means it says nothing about the ECC functionality.

1 Like

Yeah, ChatGPTs interpretation of that output is just partly wrong.

64+64 means just 2 modules => dual channel, so 128bits.
ECC is just 8 bits.

2 Likes

It’s weird that it does it, because it sometimes shows it, here’s an excerpt from my setup:

Memory Device
	Array Handle: 0x0026
	Error Information Handle: Not Provided
	Total Width: 72 bits
	Data Width: 64 bits
	Size: 32 GB
	Form Factor: DIMM
	Set: None
	Locator: DIMMA2
	Bank Locator: P0_Node0_Channel0_Dimm1
	Type: DDR4
	Type Detail: Synchronous
	Speed: 2667 MT/s
	Manufacturer: Micron
etc.

That’s with two modules installed, so the above is repeated in another section.
My motherboard (a X11SCH-F) only supports single bit error correction though.

Interesting, its same for my Ryzen in Dual-Channel unganged mode:

Handle 0x002F, DMI type 16, 23 bytes
Physical Memory Array
        Location: System Board Or Motherboard
        Use: System Memory
        Error Correction Type: Multi-bit ECC
        Maximum Capacity: 128 GB
        Error Information Handle: 0x002E
        Number Of Devices: 4


Handle 0x0036, DMI type 17, 92 bytes
Memory Device
        Array Handle: 0x002F
        Error Information Handle: 0x0035
        Total Width: 72 bits
        Data Width: 64 bits
[...]

It may depend on memory configuration (e.g. ganged/ungange mode) in BIOS and BIOS version too.
Maybe a round of MemTest86(+) is a good idea after all.

1 Like

“Will do Sir!”

Should I switch to ungange mode? ChatGPT advised this.

My opinion is ChatGPT at least as of 4o is not good for research, but fine for genai and particularly excels at ImageGen.

1 Like

Which AI is good for research. I am planning to host my own on my main pc.