Announcement

Collapse
No announcement yet.

Linux Returns To Parallel CPU Microcode Updates To Reduce Cloud Disruption

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Linux Returns To Parallel CPU Microcode Updates To Reduce Cloud Disruption

    Phoronix: Linux Returns To Parallel CPU Microcode Updates To Reduce Cloud Disruption

    Following the Spectre mitigations coming to light last year, the late microcode update process for CPUs was serialized. However, this has led to complaints from cloud vendors and other customers with large core count servers where downtime/disruptions need to be minimal. So now the CPU microcode update process is being parallelized again...

    http://www.phoronix.com/scan.php?pag...Parallel-ucode

  • #2
    How slow can it possibly be? I understand every second counts for large servers but I didn't think the microcode updates were slow enough to even notice they were happening. But, I honestly have no idea how long it takes per-core.

    Comment


    • #3
      See? And you thought Intel was evil for keeping the core count low. They were only thinking of server downtimes :P

      Comment


      • #4
        I find it surprising that microcode updates is not per socket, but instead per core. I know there exists CPUs that have other layouts where this does not make sense, but for "off the shelf" Intel CPUs the cores are usually the same per socket. Out of pure morbid curiosity does anyone know if microcode update are auto-applied if you do a CPU hotswap or fire up an offline CPU on a large system do you have to trigger that manually?

        http://www.dirtcellar.net

        Comment


        • #5
          Originally posted by waxhead View Post
          I find it surprising that microcode updates is not per socket, but instead per core.
          It's even more surprising that a SMT capable core gets updated per SMT thread i.e. twice - as far as I understand what Michael wrote.

          Comment


          • #6
            now i wonder what would happen if the kernel is hacked to load different versions of the firmware on each core/thread 😁😁

            Comment


            • #7
              Originally posted by tajjada View Post
              now i wonder what would happen if the kernel is hacked to load different versions of the firmware on each core/thread 😁😁
              Maybe we can have specter hardened cores and fast ones xD
              And all security related apps only runs in the firmer

              Comment


              • #8
                Originally posted by tajjada View Post
                now i wonder what would happen if the kernel is hacked to load different versions of the firmware on each core/thread 😁😁
                While you're updating a cloud of servers? Easy. Follow these 3 simple steps:

                - Squat
                - Bend down with your head between your legs
                - Kiss your ass goodbye

                Comment


                • #9
                  Originally posted by waxhead View Post
                  Out of pure morbid curiosity does anyone know if microcode update are auto-applied if you do a CPU hotswap or fire up an offline CPU on a large system do you have to trigger that manually?
                  I've never heard of "hotswap" x86 CPUs in the modern day, and I don't think you can have "offline" CPUs either. It can be idle and/or sleep, but it's not "offline" without going in the UEFI settings and disable the second (third, fourth, whatever) socket.

                  So I think all you said requires a reboot.

                  Comment


                  • #10
                    Originally posted by starshipeleven View Post
                    I've never heard of "hotswap" x86 CPUs in the modern day, and I don't think you can have "offline" CPUs either. It can be idle and/or sleep, but it's not "offline" without going in the UEFI settings and disable the second (third, fourth, whatever) socket.

                    So I think all you said requires a reboot.
                    NUMA nodes (that has a CPU + memory + IO lanes) can be hot plugged.

                    To offline a CPU all you have to do is echo 0 (offline) or 1 (online) to a file in sysfs. So in case you want to offline CPU number 14 all you have to do is:
                    echo 0 > /sys/devices/system/cpu/cpu14/online
                    (and echo1 > ...) to online it again...

                    References...
                    https://www.youtube.com/watch?v=VE_P3ti2VWY (look at about 6:00, where some of the use cases are pointed out)
                    http://lkml.iu.edu/hypermail/linux/k...2.1/01135.html
                    https://www.kernel.org/doc/html/v4.1...u_hotplug.html

                    http://www.dirtcellar.net

                    Comment

                    Working...
                    X