Announcement

Collapse
No announcement yet.

Even NVIDIA Has Jumped Big On The Open-Source OpenBMC Train

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

  • Even NVIDIA Has Jumped Big On The Open-Source OpenBMC Train

    Phoronix: Even NVIDIA Has Jumped Big On The Open-Source OpenBMC Train

    OpenBMC as the Linux Foundation project backed by vendors like Intel / Microsoft / Google / Meta for an open-source BMC firmware stack continues to be a growing success. This alternative to long-used proprietary BMC software stacks continues to grow in popularity with AMD now using it on their reference motherboards and Supermicro being another notable user with some of their server platforms. Not entirely new but been meaning to write about it and NVIDIA talked more openly about it this week: NVIDIA is also a big supporter and user of OpenBMC for their high-end AI/HPC servers and BlueField DPU hardware...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    As someone who is not familiar with OpenBMC, is it basically a open source solution for remote access to a device (at the firmware level)?

    Comment


    • #3
      Originally posted by CuriousTommy View Post
      As someone who is not familiar with OpenBMC, is it basically a open source solution for remote access to a device (at the firmware level)?
      It requires actually having a BMC (Baseboard Management Controller) chip, such as the ASpeed AST series. They also take over as the integrated graphics solution, which gives you a natural way to do remote desktop irrespective of what software is running on the host CPU.

      My main complaint about them is that (for graphics, at least), they're dog slow. I don't exaggerate when I say they're as slow as software rendering on a 1st or 2nd gen Raspberry Pi.

      Anyway, so the OpenBMC stack is open source firmware that runs on supported BMC chips.

      Comment


      • #4
        Originally posted by CuriousTommy View Post
        As someone who is not familiar with OpenBMC, is it basically a open source solution for remote access to a device (at the firmware level)?
        the bmc is a secondary low powered computer running that has access to a lot of the primary systems guts. it's on the same motherboard, but generally has it's own power connections and it's own network connection (although these days it's common to share the same phyiscal eth port). For example it can turn on/off the primary systems power, upgrade the primary systems firmware. it has hooks into the primary system pci bus so that It can pretend to be a usb drive, cdrom, floppy, video card, and provide network api's remotely exposing those capabilities. i don't know how things go nowadays, but was not used to monitor the system during normal operations, like you still go through primary system os to get motherboard temperature/fan sensors etc. most popular chip is the aspeed AST2?00 series chips.

        Comment


        • #5
          Originally posted by coder View Post
          It requires actually having a BMC (Baseboard Management Controller) chip, such as the ASpeed AST series. They also take over as the integrated graphics solution, which gives you a natural way to do remote desktop irrespective of what software is running on the host CPU.

          My main complaint about them is that (for graphics, at least), they're dog slow. I don't exaggerate when I say they're as slow as software rendering on a 1st or 2nd gen Raspberry Pi.

          Anyway, so the OpenBMC stack is open source firmware that runs on supported BMC chips.
          Sorry to say this, but if you expect OOB video from a BMC chip to provide anything more than a simple yet very workable CLI interface and basic No-D, ASCII-like graphics from a BMC sending video output over a network...

          ...then I don't think you understand the true purpose of BMC and Out-of-Band management.

          I prefer to have BMC with a dedicated OOB Ethernet port on all of my servers. That way if I need to dink with one of the "system" Ethernet ports I can do so without risk of losing my connection to the server.

          And...I don't need no stinking graphics via the OOB port to management my servers; CLI works just fine TYVM. Also, various web applications can do the fancy graphical stuff nicely, if you choose your tools wisely and consider your true needs carefully since that can add load to your server.

          Besides, you can always learn how to use [cringe] X for remote graphical windows from apps on your server

          Comment


          • #6
            Originally posted by NotMine999 View Post
            Sorry to say this, but if you expect OOB video from a BMC chip to provide anything more than a simple yet very workable CLI interface and basic No-D, ASCII-like graphics from a BMC sending video output over a network...

            ...then I don't think you understand the true purpose of BMC and Out-of-Band management.
            I understand the purpose and don't insult me for expecting some rudimentary form of even 2D acceleration from it. Yes, I get that it's not built to handle standard GUI workloads, but given that it is integrated as the iGPU of these boards, it should definitely not suck as hard as it does. I'm not talking about 3D acceleration, here. Even just scrolling terminal windows on a high-res screen.

            Originally posted by NotMine999 View Post
            I don't need no stinking graphics via the OOB port to management my servers; CLI works just fine
            Yeah, maybe until you need to start copy and pasting stuff between programs and files and stuff. Or like between a web page, locally, without having to be remote. Because, that part of the selling point of integrated graphics. Or maybe you want a couple terminal open, running commands and monitoring the output, while you run other stuff on it.

            Just because you can work around its limitations doesn't make them virtuous, which is almost how you're talking about them. I didn't say​ it was useless, in its current form, just that this was a glaring negative. And If they really didn't intend people to use it as integrated graphics, then why the heck does it even have drivers to let you do so?

            Since you seem fond of ancient technology, do you know what we had in the early 90's? Something called "Windows Accelerator Cards", which were graphics cards featuring SVGA-compatible graphics chipsets that could accelerate certain 2D operations. These stupid AST chips don't even have that much. I'm really not asking for a lot, here. There's even off-the-shelf IP they could use, if they just wanted 2D acceleration without the baggage of a full 3D accelerator. They already got the display controller IP from somewhere. They might as well go a step further.

            Comment


            • #7
              Originally posted by coder View Post
              My main complaint about them is that (for graphics, at least), they're dog slow. I don't exaggerate when I say they're as slow as software rendering on a 1st or 2nd gen Raspberry Pi.
              Even just gathering sensor data through ipmitool is painfully slow, and generally when a system has a BMC then it's the only thing that has access to most sensors. I hope OpenBMC can send sensor data through hwmon.

              Comment


              • #8
                Originally posted by coder View Post
                I understand the purpose and don't insult me for expecting some rudimentary form of even 2D acceleration from it. Yes, I get that it's not built to handle standard GUI workloads, but given that it is integrated as the iGPU of these boards, it should definitely not suck as hard as it does. I'm not talking about 3D acceleration, here. Even just scrolling terminal windows on a high-res screen.

                Yeah, maybe until you need to start copy and pasting stuff between programs and files and stuff. Or like between a web page, locally, without having to be remote. Because, that part of the selling point of integrated graphics. Or maybe you want a couple terminal open, running commands and monitoring the output, while you run other stuff on it.

                Just because you can work around its limitations doesn't make them virtuous, which is almost how you're talking about them. I didn't say​ it was useless, in its current form, just that this was a glaring negative. And If they really didn't intend people to use it as integrated graphics, then why the heck does it even have drivers to let you do so?

                Since you seem fond of ancient technology, do you know what we had in the early 90's? Something called "Windows Accelerator Cards", which were graphics cards featuring SVGA-compatible graphics chipsets that could accelerate certain 2D operations. These stupid AST chips don't even have that much. I'm really not asking for a lot, here. There's even off-the-shelf IP they could use, if they just wanted 2D acceleration without the baggage of a full 3D accelerator. They already got the display controller IP from somewhere. They might as well go a step further.
                Which AST chip you were experiencing such issues with, and under which OS?
                I just tested an AST2500 from 2015 under Windows and it's able to handle dynamically moving windows around at 1080p with 15 FPS via the Supermicro BMC HTML5 applet (over TLS). In fairness it is as responsive as a typical VNC to a Linux host, but not as good as native Windows RDP.
                The driver is WDDM 1.3 certified, so it does have 2D acceleration (and even reports D3D12 compatibility).
                I do not have any graphical Linux servers to test with unfortunately.
                Maybe what you experienced was the result of substandard BMC viewer implementation? Supermicro also provides a Java applet, but I haven't bothered testing that.

                Comment


                • #9
                  Originally posted by coder View Post
                  It requires actually having a BMC (Baseboard Management Controller) chip, such as the ASpeed AST series. They also take over as the integrated graphics solution, which gives you a natural way to do remote desktop irrespective of what software is running on the host CPU.

                  My main complaint about them is that (for graphics, at least), they're dog slow. I don't exaggerate when I say they're as slow as software rendering on a 1st or 2nd gen Raspberry Pi.

                  Anyway, so the OpenBMC stack is open source firmware that runs on supported BMC chips.
                  That's the sort of problem that fixes itself over time. Same way it "fixed" itself for newer RPi boards.

                  Comment


                  • #10
                    Originally posted by NotMine999 View Post
                    Sorry to say this, but if you expect OOB video from a BMC chip to provide anything more than a simple yet very workable CLI interface and basic No-D, ASCII-like graphics from a BMC sending video output over a network...
                    I would prefer that the hardware didn't have *any* graphics capabilities and simply be cheaper

                    I was a big fan of Sun Microsystems ALOM/ILOM which serves a similar purpose i.e SunFire v210.

                    Comment

                    Working...
                    X