ECC RAM
If you are running a server with data of any value, you should try your best to afford ECC RAM.
Its more than correcting single bit errors; at least your machine will halt when memory errors are detected, instead of silently corrupting data. In a nutshell, if you care about your data, use ECC.
If you are running a checksumming filesystem like ZFS consider use of ECC RAM to be a MUST.
AMD Processors
ECC will be suported if CPU, Chipset and Bios supports ECC functionality. Most modern AMD AM3+/AM4/AM5 CPU’s support ECC. Most AMD chipsets (like 760G) also do.
See this blog post for Ryzen 7000 ECC support on ASRock motherboards.
You need to check if Bios Supports too. If not, you may try to see if linux kernel can help you support it. For AMD motherboards, ASUS explicitly says that they support ECC RAM. So if you plan on using ECC check out ASUS. Motherboards from others like Gigabyte may support ECC but they don’t say it explicitly on their site (may be for marketing reasons).
Per different sources ECC works well on ASRock boards.
We recommned you double-check by downloading the motherboard manual and see if it actually supports ECC functions.
Ryzen
Ryzen in general supports and use ECC since Ryzen CPUs use the same memory controller as their EPYC counterparts, and have full ECC support if motherboard and DIMMs also supports ECC.
Ryzen APUs starting with 6000 series support ECC. Threadripper supports ECC.
Recommendation:
If you want to use Ryzen, use lastest (Zen 3 or later) Ryzen CPU (not APU) and check Motherboard spec for explicit mention of ECC Support. Not to mention, you need to use Unbufferred ECC DIMMs.
NOT Supported:
- Ryzen Zen2 and Zen3 APUs do not support ECC. Raven Ridge-based Processors do NOT support ECC.
- ECC is supported in pro variant of Laptop and G-series Ryzen CPUs or Standard varients of laptop and APUs starting with 6000 series. Laptop motherboards mostly don’t, so you will not get effective ECC support in case of Ryzen laptops!
Check ECC Support on Windows
You can check if your Windows instalation is actually using ECC by running the following:
Run CMD as Admin.
wmic MEMORYCHIP get DataWidth,TotalWidth If the TotalWidth value is larger than the DataWidth value you then you have ECC memory working.
Ref:
[3] https://thetechskinny.blogspot.in/2010/11/enabling-ecc-memory-in-linux-without.html [4] https://www.reddit.com/r/homelab/comments/2vza09/ecc_on_amd/
