6 ms·
ECC should have become standard around the time memories passed 1GB. It's seriously annoying that ECC memory is hard to get and expensive, but memory with usel
by Animats 8mo ago
ECC should have become standard around the time memories passed 1GB.
It's seriously annoying that ECC memory is hard to get and expensive, but memory with useless LEDs attached is cheap.
- loeg 8mo agoIt's not even ECC price/availability that bothers me so much, it's that getting CPUs and motherboards that support ECC is non-trivial outside of the server space. The whole consumer class ecosystem is kind of shitty. At least AMD allows consumer class CPUs to kinda sorta use ECC, unlike Intel's approach where only the prosumer/workstation stuff gets ECC.
- rpcope1 8mo agoI've been honestly amazed people actually buy stuff that's not "workstation" gear given IME how much more reliably and consistently it works, but I guess even a generation or two used can be expensive.
- loeg 8mo agoI've had zero issues with AMD's consumer tier of non-WX Threadripper and Ryzen models, FWIW.
- thousand_nights 8mo agooverblown? billions of users use consumer tier hardware just fine. i have servers at home with years of uptime without any ECC memory
- conception 8mo agoBut how much bit rot? You’ll never know.
- Maxion 8mo agoIf I don't know about it, then how does it affect me / why should I care? My home server does what it is supposed to do and has done so for a decade. If bit rot /bit flips in memory does not affect my day-to-day life I much prefer cheaper hardware. I do hope the nuclear powerplant next door uses more fault tolerant hardware, though.
- loeg 8mo agoEventually you might notice the pictures or other documents you were saving on your home server have artifacts, or no longer open. This is undesireable for most people using computer storage. > I much prefer cheaper hardware. The cost savings are modest; order of magnitude 12% for the DIMMs, and less elsewhere. Computers are already extremely cheap commodities.
- zadikian 8mo ago12% for the DIMMs only, but with Intel you need Xeon and its accompanying motherboard for it. Someone said AMD "kinda" lets you do ECC on consumer hardware, not sure what the caveats are besides just being unbuffered. Assuming that's more due to intentional market segmentation than actual cost, yeah I would pay 12% more for ECC. But I'm with the other guy on not valuing it a ton. I have backups which are needed regardless of bitrot, and even if those don't help, losing a photo isn't a huge deal for me.
- loeg 8mo ago> Someone said AMD "kinda" lets you do ECC on consumer hardware, not sure what the caveats are besides just being unbuffered. That was me. It isn't "officially" supported by AMD, but it should work. You can enable EDAC monitoring in Linux and observe detected correction events happening. > Assuming that's more due to intentional market segmentation than actual cost That's the argument, yeah.
- zadikian 8mo agoI'm more concerned how the Mac filesystems don't have payload checksums.
- throwaway85825 8mo agoVery few applications scale with cores. For the vast majority of people single core performance is all they care about, it's also cheaper. They don't need or want workstation gear.
- rafaelmn 8mo ago> Very few applications scale with cores You mean like compilers and test suites ? Very few professional workloads don't parallelize well these days.
- VorpalWay 8mo agoCompilers and test suits do scale (at least for C/C++ and Rust, which is what I work with). But I think the parent comment referred to consumer applications: games, word processing, light browsing, ... (Though games these days scale better than they used to, but only up to a to a point.) I find that most tools I write for my own use can be made to scale with cores, or run so fast that the overhead of starting threads is longer than the program runtime. But I write that in Rust which makes parallelism easy. If I wrote that code in C++ I would probably not bother with trying to parallelize.
- rafaelmn 8mo agoBut those tools aren't really compute bound anyway - you're not buying a workstation to do them, you're getting a consumer laptop or a tablet.
- zadikian 8mo agoThere were several years where used cheese grater Mac Pros could be bought and upgraded for very cheap, and were still not too outdated. I only replaced my MacPro4,1 when the M1 mini came out, mainly cause of wattage.
- deepsun 8mo agoI hate my workstation desktop I assembled 15 years. It just doesn't break! I have no excuses to buy a new one (except for video card).
- altairprime 8mo ago288-pin ECC is, I believe, available on any X670E/X870E platform boards so long as the motherboard builder hasn’t expressly interfered with it (and probably other chipsets as well?). Windows 10+ reports it as full ECC (multi-bit / 72-bits). AMD pushed that enable in an AGESA three or four years ago iirc. The CAS latency for ECC is about double what gaming RAM offers, but in practice other more costly factors tend to limit performance first. Any motherboard released before the AGESA update would be more difficult to predict, but that’s baseline uncertainty for PCs so no surprises there.
- antonkochubey 8mo ago>The CAS latency for ECC is about double what gaming RAM offers Ironically, overclocking ECC memory is much easier than overclocking non-ECC DIMMs, because you know exactly at which point you start encountering instability and need to dial back, instead of relying on.. application crashes and BSOD's to know that you're running way too optimistic clocks/timings. Meanwhile I overclocked 'low clock / loose timing' ECC DIMMs on Ryzen 7 platform with no issues at all – kept increasing clocks and lowering timings until ECC started reporting errors, then dialed it back a couple notches, and now it is not just stable, but I also have exact reporting of it being stable.
- cromka 8mo agoSame experience here. I have a feeling ECC in gaming would soon become a thing if it wasn't for the pricing crisis.
- altairprime 8mo agoYeah! A stick of 5600 can generally reach 6000 with geardown off and that’s as far as I’ve seen cause to dial it. But certain parameters that are popular to lower for latency reduction can be, how would I put it, slightly less flexible — tREFI comes to mind as one that nearly any lowering of (on the enterprise sticks I’m using anyways) tends to cause DFE/MBIST training failures no matter what, even with direct airflow, before it ever boots far enough for memtest to expose ECC errors. (For those out there following along with PCs, if you aren’t tuning with MBIST maxed out in your BIOS, you might want to revisit that.)
- aforwardslash 8mo agoECC are traditionally slower, quite more complex, and they dont completely eliminate the problem (most memories correct 1 bit per word and detect 2 bits per word). They make sense when environmental factors such as flaky power, temperature or RF interference can be easily discarded - such as a server room. But yeah, I agree with you, as ECC solves like 99% of the cases.
- indolering 8mo agoBeing able to detect these issues is just as important as preventing them.
- aforwardslash 8mo agoThing is, every reported bug can be a bit flip. You can actually in some cases have successful execution, but bitflips in the instrumentation reporting errors that dont exist.
- jeffbee 8mo agoECC are "slower" because they are bought by smart people who expect their memory to load the stored value, rather than children who demand racing stripes on the DIMMs.
- throwaway85825 8mo agoThere's just no demand for high speed ECC aside from a few people making their own dimms.
- undersuit 8mo agoECC is actually slower. The hardware to compute every transaction is correct does add a slight delay, but nothing compared to the delay of working on corrupted data.
- Dylan16807 8mo agoECC keeps your bits safe from random flips to a ridiculously large factor. You can run the memory at high consumer speeds, giving up some of that safety margin, while still being more reliable than everything else in your computer. And there's non-random bit errors that can hit you at any speed, so it's not like going slow guarantees safety.
- oybng 8mo agoFor the unaware, Intel is to blame for this
- WatchDog 8mo agoAll DDR5 ram has some amount of error correction built in, because DDR5 is much more prone to bit flipping, it requires it. I'm not really sure if this makes it overall more or less reliable than DDR2/3/4 without ECC though.
- himata4113 8mo agothat doesn't help when the bit is lost between the cpu and the memory unfortunately, it only really helps passing poor quality dram as it gets corrected for single bit flips, not that reliable either it's a yield / density enabler rather than a system reliability thing. it's "ECC" but not the ecc you want, marketing garbage.
- jml7c5 8mo agoAs I understand it, DDR5's on-die ECC is mostly a cost-saving measure. Rather than fab perfect DRAM that never flips a bit in normal operation (expensive, lower yield), you can fab imperfect DRAM that is expected to sometimes flip, but then use internal ECC to silently correct it. The end result to the user is theoretically the same. Because you can't track on-die ECC errors, you have no way of knowing how "faulty" a particular DRAM chip is. And if there's an uncorrected error, you can't detect it.
- jcalvinowens 8mo agoDDR5 on-die ECC detects and corrects one-bit errors. It cannot detect two-bit errors, so it will miscorrect some of them into three-bit errors. However, the on-die error correction scheme is specifically specially designed such that the resulting three-bit errors are mathematically guaranteed to be detected as uncorrectable two-bit errors by a standard full system-level ECC running on top of the on-die ECC.
- matheusmoreira 8mo agoECC also reports error recovery statistics to the operating system. Lets you know if any unrecoverable errors happened. Lets you calculate the error rate which means you can try to predict when your memory modules are going bad. I think this sort of reporting is a pretty basic feature that should come standard on all hardware. No idea why it's an "enterprise" feature. This market segmentation is extremely annoying and shouldn't exist.
- hedora 8mo agoECC is standard at this point (current RAM flips so many bits it's basically mandatory). Also, most CPUs have "machine checks" that are supposed to detect incorrect computations + alert the OS. However, there are still gaps. For one thing, the OS has to be configured to listen for + act on machine check exceptions. On the hardware level, there's an optional spec to checksum the link between the CPU and the memory. Since it's optional, many consumer machines do not implement it, so then they flip bits not in RAM, but on the lines between the RAM and the CPU. It's frustrating that they didn't mandate error detection / correction there, but I guess the industry runs on price discrimination, so most people can't have nice things.
- tombert 8mo agoI am not sure I've ever seen a laptop that has ECC memory. I'm sure they exist but I don't think I've seen it. I would definitely like to have a laptop with ECC, because obviously I don't want things to crash and I don't want corrupted data or anything like that, but I don't really use desktop computers anymore.
- justin66 8mo ago> ECC should have become standard around the time memories passed 1GB. Ironically, that's around the time Intel started making it difficult to get ECC on desktop machines using their CPUs. The Pentium 3 and 440BX chipset, maxing out at 1GB, were probably the last combo where it pretty commonly worked with a normal desktop board and normal desktop processor.
- ece 8mo agoLooking back, I actually think the older the RAM the more likely you're able to notice bit-flips and they harm your workflow. EDO RAM was the worst in my experience (my first computer), SDRAM was a bit better, and random bit-flips atleast under load got very rare after DDR2. I think Google even had a paper comparing DDR1 vs DDR2 (link: https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/35162.pdf https://static.googleusercontent.com/media/research.google.c...). That said, memory DIMM capacity increases with even a small chance of bit-flips means lots of people will still be affected.