When I first began to develop an interest in data science, my several-year-old laptop was enough to begin learning the fundamentals, but I quickly found that I had a desire for more and more computing power; far beyond what my setup could provide.
It was pretty overwhelming to look at my limited budget for computer upgrades versus what was required to build a data science rig. There are plenty of “BEST BUDGET DATA SCIENCE PC!!” style videos available on YouTube, but I found the majority of these to be not particularly informative or useful.
I was getting pretty lost in the weeds when it struck me: large language models are perfect for this task. I hopped on ChatGPT (an older variant, 3.5 I believe), and started picking its brain as if it were a computer/data scientist and subject matter expert. I explained my woes, asked for guidance, and I was quickly introduced to the world of used enterprise-grade gear.
The Hardware Upgrade Journey
In 2023 I switched from a 2016 MacBook Pro to a 2014 tower server. Going used, and even older, ended up giving me the most bang for my buck. I purchased a used HP Z840 workstation for $400 CAD (around $281 USD). Its configuration at purchase included 2 CPUs (a total of 12 cores and 24 threads @ 2.4GHz), 32GB of system RAM, an older 4GB NVIDIA GPU, a DVD burner and no hard drive.
The DVD burner may as well be a floppy drive at this point. We don’t have a single CD or DVD in our house, and I literally cannot remember the last time I saw one. Sometimes I still press the button to open the tray; there is legitimate utility in nostalgia.
Upgrades and Costs
The used server store I purchased from offered much more powerful configurations, but I opted for upgrading the platform myself using more used gear from eBay. All in all I purchased these upgrades from eBay and Facebook marketplace:
- A matched pair of E5-2697v4 CPUs - $134 USD
- 512GB (16x32GB) PC4-19200T-L DDR4 LRDIMM Memory - $728 USD
- Upgraded 1125W Power Supply - $96 USD
- NVIDIA RTX3060 12GB GPU - $250 CAD
- 2x1TB Gen3 NVMe SSDs - $168 CAD
- 2x4TB NAS HDDs - ~$300 CAD
- PCIe 3.0 NVMe Expansion Card - $90 CAD
Including the server and upgrades, the total cost was about 2500 CAD or around 1800 USD. Not bad! Still spendy, but we went from my old MacBook with 2 cores (4 threads) of CPU and 8GB RAM, to 36 cores (72 threads) of CPU and half a TB of RAM, along with a dedicated GPU and much more.
I run Proxmox as its hypervisor, but this platform could run a dedicated OS like a Linux of your choice, or even Windows… (god forbid).
Beyond the First Upgrade
As you can probably guess, this was still not enough for me, and I have since added two rackmount HPE 380p Gen8 servers, both of which run Proxmox, and another dedicated computer serving as my OPNSense router and firewall.
With all of this complexity, you may wonder what my day-to-day computing environment looks and feels like. What is it like when I sit at my desk, and how does this wild setup better facilitate data science experiments?
Daily Computing Experience
The first thing to know is that running a system with a hypervisor is fundamentally different than sitting in front of a normal desktop, and I will eventually write about that (and the link will probably be right here), but a system running a hypervisor is wildly more customizable than you might anticipate. TLDR, we can do some witchcraft to have a ’normal’ experience, but we can also have performance that the consumer computing world cannot comprehend, even on hardware that is now 11 years old.
My desk is a normal desk, two monitors, one nerd-level mechanical keyboard, one ergonomic mouse, and familiarities stop there. I use an Arch Linux with Hyprland VM configured to be a fully local experience; the GPU is exclusive to the VM, passed through with PCIe pass-through, and the keyboard and mouse are plugged in with passed-through USB ports. The Arch OS install has been split into two drives: /home (think where your user folder is) exists on its own 1TB NVMe volume, and all the rest of the OS, all the thinky-thinky bits, are installed directly to a 128GB RAMdisk. The VM is allocated 32 threads of CPU, and 256GB of system RAM.
Performance Benefits for Data Science
In short and aside from all the nerd speak above, the result is a personal computing environment so performant that you literally cannot buy an experience like it on the consumer market, even in 2025. Between the RAMdisk and allocated memory, the full operating system exists entirely within volatile memory, which is ORDERS of magnitude faster than an SSD, and light-years beyond an HDD.
This is an epic setup for data science experimentation. When I first moved to running my entire OS from RAM, I was shocked. The performance leap isn’t small and incremental—it’s massive and addicting. 256GB of RAM and 32 CPU threads means I can process absurdly large datasets entirely in-memory, completely sidestepping the storage bottlenecks that strangle workflows. Add in the dedicated GPU for accelerating machine learning workloads, and I’ve eliminated I/O wait times.
From another angle, this configuration has liberated me from the traditional hardware constraints that typically limit data science work. Because my OS runs from a RAMdisk, system operations happen at memory speeds (nanoseconds) rather than storage speeds (milliseconds). This isn’t a small difference—it’s transformative when you’re crunching massive datasets. Combined with substantial CPU threads and GPU passthrough on my old enterprise hardware, I’ve essentially built myself a specialized data science supercomputer for a fraction of what comparable new hardware would cost.
Simply put, my setup brings a gun to a knife fight. I can hold entire datasets and models in ultra-fast RAM while leveraging significant parallel processing power. Experiments that used to take hours now complete in minutes. This isn’t just convenient—it’s changed how I approach problems, enabling rapid iteration and far more complex modeling than I could ever achieve on consumer hardware.
Even better, I run a hypervisor, so while I am using my fancy Arch VM, the node still has 40 threads of CPU and 128GB of RAM which can be allocated to other tasks. So just in leftovers, I have the equivalent of 10 of those old MacBooks CPU-wise, or a pile of 16 of them memory-wise.