Many people have an older GPU lying around, likely taken from an older PC or retired following an upgrade to a newer, shinier GPU. However, that old GPU doesn't just have to sit idle, and there are ways to make it work for you. What that looks like depends on your needs and the services you use, but these are some of the ways you can use an older GPU and make it an invaluable part of your computing life again, and can be done on any old GPU.
That's right, even that old Nvidia GeForce GTX 1070 Ti with 8GB of VRAM still has its uses, and the same goes for any similarly old card. There's a lot you can do with one of them, and these are some of the ways I've made my old GPU work for me. If your motherboard has space for another GPU, too, then you don't even need a home server to do any of these.
Hardware transcoder for Jellyfin or Plex
Old cards are very capable
Want to stream movies or TV shows to your devices? While an older card may not support new and powerful codecs like AV1 or HEVC, H264 content and older codecs should still work perfectly. Even the oldest of cards can still do this extremely quickly, and I used my 1070 Ti as a transcoder in Jellyfin for more than a year. While it meant ensuring that my content was encoded appropriately, when I was watching on the same network and didn't need transcoding, direct streaming worked perfectly, so it's not as if you can't have AV1 or HEVC content at all.
Transcoding is by far one of the best ways to use an old GPU, because it often consumes little power and can do it significantly faster than your CPU ever will. Not to mention with better quality, too. Depending on what the card is, a smaller card might fit just fine alongside your current GPU, or it may not even impact your home server's form factor. My home server was in the Corsair Air 240, and the 1070 Ti fit perfectly in it.
Home NVR acceleration
You don't need a lot of power for CCTV
Many people opt to run their own NVR through the likes of Frigate, pulling in RTSP streams from cameras and opting to process the streams on a localized, central NVR that they fully control. I've configured a server like this for someone I was working with as a means to centralize their CCTV processing through Frigate. However, the GPU they used was the Nvidia GeForce 970, an old card and one that you wouldn't really expect to be powerful.
Despite those expectations, it works just fine for six cameras with TensorRT and consumes between 50W and 180W of power, depending on what's happening at any given moment. It's analyzing video feeds, detecting people and other specified objects, taking snapshots, and recording. It's not a powerful GPU by any stretch of the imagination these days, and it would struggle with the addition of extra cameras, but it works great for home surveillance. An old GPU might be perfect for powering your own NVR with advanced detection capabilities.
Deploy a local LLM and embedding model
Perfect for notes and code
There are many small large language models that can be deployed on a range of hardware, and there are plenty of 7-billion parameter models that will fit just fine in 8GB of VRAM. Even if that's a struggle, there are models as small as TinyLlama 1.1B, requiring a bit over 2GB of VRAM. While versatility and capabilities drop as you downsize, even a smaller model can be great for pairing with Home Assistant or for performing processing on local data.
In fact, if you pair one of these models with Retrieval Augmented Generation, also known as RAG, your old GPU can utilize the power of an LLM to build responses to prompts using the data that you give it. This means your LLM will be able to directly reference information that you feed it, and can be useful for research, note-taking, and more. However, this requires an embedding model, which is similar to RAG but not quite the same.
An embedding model differs as it's what enables RAG to work. It takes the data that it's provided (so, your corpus of documents, notes, or anything else that you feed it), and converts it into numerical representations that can then be used by RAG when building a response to the user. Embedding models are often tiny and are usually easy to run alongside an LLM that you've already chosen to fit in your VRAM.
Set up a cloud gaming emulation server
Your old card can still do great things
Okay, I know I said it might not be good for gaming, but hear me out. While it might seem obvious, it’s worth emphasizing that older GPUs can still be fantastic for running retro games or even emulators, particularly from the PlayStation 1 and later. Classic titles from the 90s and early 2000s were designed with less demanding graphics requirements, so they can run smoothly on older hardware. If you’ve got a favorite old game you’d like to relive, your older GPU is up to the task.
If you're into emulation, older GPUs can shine here too. Emulators for older consoles like the Nintendo 64 or PlayStation 2 don't require much in the way of modern GPU power, meaning your old card could give you that hit of nostalgia with ease. For some emulators, even older GPUs can help in upscaling games to higher resolutions, enhancing the overall experience while remaining far more power-efficient than newer GPUs.
Upscaling old videos and photos
Rescue your old pictures
One other practical use for an older GPU is image upscaling or processing tasks that benefit from GPU acceleration. For instance, old GPUs can be leveraged to run AI-powered upscaling models like ESRGAN (Enhanced Super-Resolution Generative Adversarial Networks) for enhancing the quality of old images or videos. If you have a collection of low-resolution media files, your older GPU can help improve their quality for smoother streaming or even printing high-quality photos.
The process requires a decent amount of power from your GPU, but older cards still perform well for tasks like enhancing art, restoring old photos, or upscaling video content. And considering the growing availability of AI-based image enhancement software, this is a straightforward project that won't require too much setup. Whether you want to use it for a personal project or a commercial application, your old GPU can still deliver solid performance for visual tasks that require more than your CPU can handle.
The best way to deploy this would be using the Stable Diffusion WebUI and giving the container or virtual machine access to the GPU. That way, you can access it over a network. Older GPUs might be slow, but for single images, you'll be waiting for less than a minute in most instances.
Specialized workloads in a virtual machine
Offload everything to the GPU
If your system runs virtual machines, an old GPU can serve as an effective resource for offloading specific workloads that don't require heavy computational power. With virtualization software like Proxmox or VMware, you can allocate your old GPU to a specific VM for tasks like testing software, managing a local Kubernetes cluster, or running specialized applications that don't demand top-tier GPU performance.
For example, in a home lab, your old GPU can be used as a dedicated resource for smaller virtual machines running network simulation tools or other experimental software. This setup can also come in handy if you're using specialized software like CAD tools that require GPU acceleration but don't need the latest GPU models. Allocating your old GPU to these workloads could offer a big performance boost without breaking the bank on a new card.
Plus, going back to the Proxmox example, you could pass through a GPU to a dedicated testing VM. In a machine with two GPUs, you can reserve your more powerful GPU for more intense workloads, and just give the full, secondary GPU to a VM of your choosing.
