Score:32

Does a server need a GPU?

ca flag

Do I need a GPU on a text and console only server? No GPU as in no iGPU and dGPU. Im going to be using SSH, so I dont need a display out.

Im using Linux, but the OS shouldn't affect the results

Steve Summit avatar
us flag
These days, GPU's are used as much for number crunching, I think, as for graphics processing. At work we're ordering servers with top-of-the-line $40,000 GPU's for some critical processing. I'm not sure how many general-purpose programs (i.e. those you might be using already) are being rewritten to take advantage of a GPU (if one is available), but I wouldn't be surprised if the number is nonzero. In other words, you might have good use for a GPU even on a headless server.
phuclv avatar
rs flag
lots of GPUs nowadays don't even a display output because they're used for normal parallel processing, and most of modern super computers have a majority of their computing power come from GPUs. They can be used for things like rendering, simulation, deep learning or coin mining... So depending on what you run, it may be much better to have a GPU
Vikki avatar
in flag
"so I dont need a display out" - and what do you do when the server breaks and you have to plug in locally to troubleshoot?
Criggie avatar
in flag
There might be some confusion in the answers, some assuming a GPU is a fancy gaming card, and others assuming it means "any old video card connector" Third case is a dedicated datacenter card. Which of these three do you refer to ?
ae flag
@Vikki In this case, a good ol' VGA (or even worse) card would (in theory) suffice. I don't think they had a GPU.
Marcus Müller avatar
pt flag
@Vikki this is about a server board, so you log in to the on-board BMC, and restore the OS from there; these things give you serial consoles, direct access to storage, and if you want, also a VNC'ed framebuffer. Running around with a keyboard and a screen, that's 90's. Seriously.
Score:43
cn flag

You do not need one, but you will be very hard pressed to get a proper server WITHOUT one, even if it is a low end one. This is simply a matter of what people OFFER — not what you want. Server boards mostly are prepared for attaching a screen, and if anything you will value that the next time you must upgrade the BIOS. SSH will not work for that. So, you get a server that not only has a GPU, but also has IPMI functionality allowing you to see both a "virtual screen" as well as using this screen over HTML (mostly) to allow you to see and configure the BIOS. You may say "you use Linux" — but somehow you must install it, and sometimes you must update the BIOS, and things being as they are, those operations are not happening via Linux over SSH. Also at times of failure you may realize "using SSH" means "not having any idea how to get to the server as the SSH interface is failing for whatever reason". At these points a non-networked access (via a browser on a separate management system) is a lifesaver.

It has been many years since I have seen a proper server that does not have IPMI and a GPU. You literally have to look into the garbage bin these days — if anyone has something without that is proper please inform me, but I am mostly looking at SuperMicro and am not aware of any board that would fit the OP's demands.

tymur999 avatar
ca flag
I meant if I need a GPU for a ready-made server. I have a dGPU to swap in if anything goes wrong or I for some reason can't use SSH, I just don't want it running all the time racking up hours if I don't need it to.
cn flag
Again, show me a server motherboard that is not end of life and has no on board GPU. Often as part and integrated with an base management board. Another dedicated - sure - but i.e. https://www.supermicro.com/en/products/motherboard/X12STL-F is a very low end board. ASPEED AST2600 BMC on board for management. Part of the board.
tymur999 avatar
ca flag
I'm not saying that I'm trying to avoid an onboard GPU, but just in case
cn flag
Actually you are. The mentioned processors would be a dGPU - dedicated with a chip on the motherboard - and you make not clear that you talk of an ADDITIONAL, card based, GPU.
davidbak avatar
jp flag
Is IPMI really considered a GPU? I always thought it was a chip (or system management code) that implemented a simple VGA-ish frame buffer, and some way to ship it out (whatever the standard is for that).
Peter Cordes avatar
ke flag
@davidbak: Yeah, I don't think server video hardware like that (for remote management, BIOS setup, and keeping some OSes happy) has much if any graphics *processing* hardware. GPU is not a proper name for such graphics hardware; these days if you google "server GPU", you get results about compute cards like NVidia Tesla that are based on their consumer GPU designs. (Which is exactly what I thought this question was going to be about based on the title. And what more than half the questions in [tag:gpu] are about, although some are about getting X working on server video HW like this.)
joshudson avatar
cn flag
I managed to boot a system without any video board whatsoever. Had the initial boot paramters in BIOS allowed my boot CD to work I could have done an install w/o ever having any kind of video hardware in the computer. Also, I do have a PCI video-only (no GPU) card lying around. I wonder if it still works in modern hardware.
cn flag
@davidbak Well, it comes with GPU drivers. It definitely is as long end as you can imagine, but "GPU" does mean "Graphics Processing Unit" ONLY, and it fulfills that part. it is good enough a GPU to show a Windows login screen and desktop without the OS complaining and it is not just VGA - this one I linked goes up to 1920x1920. So, things are a little more complicated.
Peter Cordes avatar
ke flag
@TomTom: It's the "PU" part that's in dispute here; being able to display Windows at 1920x1920 only proves the G part. A dumb framebuffer won't do any graphics *processing* for you, e.g. you can't tell it to "fill a rectangle" somewhere in video RAM, you'd need the CPU to do the graphics processing and store the pixel data. Many old graphics cards from before everything was 3D did have some 2D acceleration capability like that, but it's still a real stretch to call that a GPU these days. (Like Matrox G200, which some server IPMI HW is based on.)
Peter Cordes avatar
ke flag
More importantly, "GPU" has another specific meaning for servers, so it's best not to mix things up by calling simple graphics hardware a GPU. The answers and comments about compute cards (server GPUs) on this question are evidence of the confusion that causes.
Martin Schröder avatar
cn flag
Serial consoles exist. And e.g. [APUs](https://www.pcengines.ch/apu2.htm) don't have GPUs.
Andrew Henle avatar
ph flag
@TomTom Pure VGA-only (somehow gets 1920 x 1200 @ 60 Hz out of a whopping 16 mb video ram) : [current (Nov 2021) production HP DL20](https://www.hpe.com/psnow/doc/a00053820enw.html) That would be, what? A 1992 "GPU"?
in flag
" if anyone has something without that is proper please inform me" - I still have a pair of IBM Netfinity Series machines (Pentium 3) sat in my loft somewhere :-)
cn flag
Yeah, because those totally are not out of any support and from the garbage bin and "proper server boards".
Score:11
bd flag

You do not need a GPU but you need some means of access in situations where the OS isn't running and hence SSH access isn't available, for example to install the OS in the first place, for configuring the hardware or in the event of an OS crash. On Intel platforms (aka industry standard architecture aka PCs) this is typically an onboard graphics controller and keyboard controller, often supplemented by a pointing device. On other platforms you may find a serial I/O interface for the same purpose to which you'll have to connect a serial terminal. Historically the latter was standard until PC architectures took over the server arena. It is still rather common in appliances and embedded systems.

cn flag
The problem wit hthe serial interface is not the interface - it is that you can not use it without ADDITIONAL infrastructure (mostly you somehow need to get the serial interface into a telnet terminal which does not happen magically). Modern on board BMC's have a web interface and grab an IP via DHCP - either on a separate network port, or piggybacking on one of the RJ45 ports. This is SERIOUSLY easier to integrate into a remote control setup as it requires basically another network cable, no a serial to telnet converter. Hence serial died out - maybe outside of industrial.
Tilman Schmidt avatar
bd flag
Sort of an inverse hen and egg problem. When serial interfaces were still common you would have a console server in every rack so it was very easy to integrate: just plug in an RS232 cable from the server or appliance to the nearest console server. With serial interfaces going out of fashion, so did console servers.
cn flag
Yeah, exactly. These days you just have another top of rack 1gbit switch that just does BMC. Really chicken and egg...
JDługosz avatar
cn flag
Yea, my file server has a Haswell Xenon which tells you how old it is now. No serial terminal, but has never had a keyboard, mouse, or monitor attached. The motherboard has a dedicated network jack for the virtual interface, which also let me mount an ISO image over the network. It's not web based though, but its own protocol.
Score:4
in flag

There is actually two questions here :

Do I need a dedicated GPU in my server ?

It depends on your needs. Dedicated GPU on servers are used for highly parallelized application (number crunching, physics simulations, signal processing, AI, cryptomining, etc.). If your applications relies on CPU only you don't need any dedicated GPU.

Do I need a video output on my headless server ?

Yes, yes you do. While it's technically possible to have a server running without it, it's very convenient to be able to plug a monitor for maintenance purpose (OS install, BIOS update, diagnostic, etc.). This video output on a server is provided by a very light integrated GPU or an management interface. I don't recommend relying on a graphics card lying around to get video output from the server, the last thing you want to do when you server is unresponsive is to have to shut it off and switch hardware to diagnose the issue. You should have a readily available way of getting video & keyboard access, IPMI is great for that but an integrated video output can also be a life saver in last resort.

Most recent server motherboard comes with a dedicated chip for platform management and basic video output, you should use it or at least get used to it for the day you'll need it.

Marcus Müller avatar
pt flag
I mean, sure, in the "servers that you buy from dell in quantities of one to five" market, having graphical output is nice. Google, Amazon, Oracle and Microsoft have datacenters full of servers. You don't run around with a monitor. That'd just be silly. Since a growing amount of servers overall are more of that kind: no, no you don't need a video output, it's the exception you have one.
Alastair Campbell avatar
in flag
@MarcusMüller You don't run around with a monitor, no, but instead you have a KVM or KVMi attached to all of the servers, or similar. Show me a single mass-produced server made in the last 20 years without a video output of some kind.
in flag
@MarcusMüller that's precisely why I specified that those features can also be provided by a management interface. I'm sure GAFAM datacenters are full of servers without any display adapter but they all have dedicated management chips that can provide or supplant a display adapter. Even if you rely on a video adapter (which is still common in heterogeneous racks), you don't have to run around with a display & keyboard, you have a central KVM switch. In any case, if you have an IPMI you don't need a dedicated display adapter but if you have neither good luck when the server became unresponsive.
in flag
I understand that Google's approach to an unresponsive server is to turn it off. There's no need to bother with a KVM or IPMI if you're not even going to look at it. The servers are cheap because they're mass-produced to Google's spec, and reliable enough that the cost of an occasional failure isn't worth dealing with.
Marcus Müller avatar
pt flag
@AlastairCampbell https://www.nokia.com/networks/products/airframe-open-edge-server/ https://www.nextplatform.com/2020/05/14/inside-facebooks-future-rack-and-microserver-iron/ https://blog.cloudflare.com/cloudflares-gen-x-servers-for-an-accelerated-future/
Marcus Müller avatar
pt flag
@MSalters from what I learn from GCP engineering folks, it's not that easy; GCP does have monitoring / consoles to everything; there's just really no need for any graphical interface, because the use case "I need to phyiscally go over there, open a shell or config interface and do something" simply fails due to a) not being near, b) draconian access control c) nothing to graphically do.
andypea avatar
in flag
@MarcusMüller Almost all servers have a BMC that connects to the GPU and makes the computer's graphical interface remotely available via an Ethernet connection using a protocol such as IPMI. Although these systems are notoriously insecure, access to them can easily be restricted by external firewalls. I have never worked at GCP, but I'd be surprised if they don't use something similar. Perhaps you could ask your GCP engineering friends? I'm genuinely curious about the hardware they use.
Marcus Müller avatar
pt flag
@andypea it definitely depends, but since in some datacenters the threat model literally is "a ninja somehow bypasses outside security, multiple barriers including metal scanners and manages to install a PCIe device in a rack unnoticed – how can we make sure that PCIe device is separated enough that it can't access customer data?", I'd be kind of surprised if there's a BMC with the usual capabilities just ready and waiting; but I'll ask. Probably they'll have to shut the hell up, however. One thing is that all firmware needs to have nice certification; can your BMC vendor certify bugfreeness?
andypea avatar
in flag
@MarcusMüller The BMC isn't an additional component that is purchased seperately from the server. Almost every server that's available to the public comes with an integrated BMC. Basically, if you're buying a server, you're getting a reasonably buggy BMC, probably with some dubious "certification".
Marcus Müller avatar
pt flag
@andypea I didn't mean to imply it was separate! But with Google actually having an OS of their own for board controllers for embedded devices, and with them constantly pushing for safety / security features of that, the BMC they actually use on their boards might be running very custom-tailored software. And they might shy away from over-provisioning that BMC's capabilities; I mean, Aspeed's current AST series of BMCs get like 2 GB of their own RAM, the matching OS, and being host as well as device for USB, PCIe and a host of other buses. That's just *asking* for trouble if your threat …
Marcus Müller avatar
pt flag
… model is actually advanced nation states running their software in VMs on your machine. I mean, that's basically a smartphone minus the touchscreen, hardwired to allow messing with your system.
andypea avatar
in flag
Damn nerds, putting all the ninja's out of business! :P
Score:1
za flag

For the purpose that you are going to use it, not really. It will be just wasted money in a hardware doing nothing (besides getting old)

andypea avatar
in flag
How are you going to install the OS or fix the machine when it doesn't boot up?
Score:1
kz flag

Normally - no, unless you can put GPU to crunch & handle your XOR traffic for you. Google GRAID for more details.

gerrit avatar
th flag
TPU may be even better!
in flag
XOR traffic? Seriously? A modern PCIe bus is so complex with its 128/130 encoding that you'll do more operations sending the data and getting the results back then you'll be performing on the CPU. Modern CPU cores with wide AVX units are pretty capable of doing simple XOR operations in bulk without the PCIe overhead.
BaronSamedi1958 avatar
kz flag
What you say makes sense for storage only system when all CPU cores are at your disposal from day zero. For somebody doing HCI you not only buy more expensive CPUs within more cores to handle I/O (+CapEx), but you have to license them with your hypervisor, your backup software, you license Windows Server cores, SQL Server etc (+OpEx). It’s huge, having +2 cores on each socket may leave you with extra $20K over the next 3 years easily! This money will be simply wasted.
Score:0
cn flag

When I set up my Haswell-based file server, I debated on whether to get the variation of the chip that had the built-in GPU. There was a slight cost difference, but it was negligible compared to the cost of the whole server!

I decided to get it, because although it was rather low-end as those things go, being the standard built-in Intel component it would be rather common and standard, so it's conceivable that some software might take advantage of it, if present. Like, maybe doing the checksum of entire blocks, or doing the RAID6 finite field calculations? I don't know if the ZFS file system took advantage of that; but if it's just a matter of using a compiler switch, it might very well in an update. (I don't know if the compiler used eventually treated the built-in Intel GPU as available instructions in code generation)

That was my reasoning at the time.

Peter Cordes avatar
ke flag
*(I don't know if the compiler used eventually treated the built-in Intel GPU as available instructions in code generation)* - if you used GCC or clang, then no, it didn't. Even ICC probably can't do it fully automatically, because getting the GPU to do anything requires going through drivers. It's definitely not something kernel code can use easily. There aren't special CPU instructions that do GPU things; instead you communicate with the GPU via MMIO, so using it depends on having its control registers memory-mapped somewhere.
Score:-1
cn flag

No, it doesn't, not for that workload.

phuclv avatar
rs flag
which workload? The OP didn't say anything about the workload. What if they're running a server do some machine learning, parallelized math or do some graphics rendering such as resizing images that users upload and return to them? Those will benefit greatly from a GPU
mfinni avatar
cn flag
Sure - they didn't mention that at all, and that's also 101 for that type of stuff, so I made the assumption that "text and console only server" meant non-high-scale computing. Especially since they asked about a single server, not a fleet or cluster of servers.
mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.