• Victor@lemmy.world
    link
    fedilink
    English
    arrow-up
    11
    ·
    4 months ago

    During this process the system firmware is configuring itself for the newly installed memory. LEDs on the motherboard or computer may or may not be active during this process. On-screen symptoms of this may be a black screen or the system pausing on a manufacturer splash screen.

    If this is happening, just leave the system powered to complete this process, which in some instances has been seen to take up to 15 minutes. If this is successful the system will either begin operating normally after the elapsed time, or may require a reboot but will work normally once this is done.

    The UX for this seems to be absolute shit. The system seems to hang, and give no indication of something going on? And in the end, the system may need a reboot to complete the process? It better give some indication when it’s complete then, or else.

    • Buffalox@lemmy.world
      link
      fedilink
      English
      arrow-up
      8
      ·
      4 months ago

      The UX for this seems to be absolute shit.

      Absolutely, this is decidedly user hostile design.

      • FrozenHandle@lemmy.frozeninferno.xyz
        link
        fedilink
        English
        arrow-up
        6
        ·
        4 months ago

        It’s just the easiest way to do this. Memory training is a very early step in the boot process. Firmware only has the CPU cache available as memory and most hardware in the system isn’t initialized yet. Most of this isn’t even done by the UEFI firmware itself, but by calling a binary blob provided by the CPU manufacturer, for intel it is called FSP and AMD i believe it is AGESA. I’d have to check, but I believe at the point memory training is running the PCIe bus has not even been brought up and scanned, so video output in this phase would require extensive reengineering of the early boot process from both the CPU manufacturer, firmware vendors and the board manufacturer. PCIe has DMA so making that work without memory might be a challenge. There are three easy to implement solutions though: post codes if your mainboard has a display for them, serial output if the board has a serial port (though this needs another device to read the messages) and the cheapest solution could be a flashing LED on the board labeled memory training in progress.