Sometimes the best home server is not a tiny low-power box.
Sometimes it is a massive workstation that used to live in a professional environment, has more expansion than most modern desktops, and can now be found for reasonable money on the used market.
That is how I ended up using an HP Z840 Workstation as my new main workstation and homelab machine.
This is not a small server. It is not a Raspberry Pi. It is not a silent mini PC. It is a proper dual-socket workstation platform with ECC DDR4 memory, lots of PCIe expansion, multiple storage options, serious cooling, and enough capacity to run programming workloads, Linux experiments, VirtualBox VMs and home lab services without feeling cramped.
My unit originally came with an Intel Xeon E5-2650 v3. I replaced it with an Intel Xeon E5-2640 v4 that cost me around 3€ including shipping. That is the kind of ridiculous used enterprise hardware upgrade that makes homelab life interesting.
The result is a big, expandable, quiet-enough workstation that now sits between two worlds:
- daily programming workstation;
- Linux homelab machine;
- VM playground;
- future home server platform;
- old enterprise hardware experiment.
This post is a look at the machine, the upgrades, why the CPU swap made sense, and how an HP Z840 can still be a very capable home server or workstation today.
Related posts:
- Linux Home Server Security Checklist
- Docker Security for Homelab Beginners
- Backing Up Docker Containers on a Home Server
- UFW Firewall Rules for Home Servers
- Dell T1600 Cheap Home Server
- Lenovo X250 Tweaking in Linux
The current HP Z840 build
This is the current configuration of my HP Z840:
Machine: HP Z840 Workstation
CPU: Intel Xeon E5-2640 v4
Previous CPU: Intel Xeon E5-2650 v3
RAM: 96GB DDR4 ECC
Storage 1: 256GB NVMe SSD
Storage 2: 1TB NVMe SSD
Storage 3: 1TB 7200 RPM HDD
Storage 4: 1TB 7200 RPM HDD
GPU: Nvidia GT 1030 passive
Previous GPU: Nvidia Quadro K2200
Current VM platform: VirtualBox
Main uses: programming, Linux experiments, home lab VMs, future server workloads
It is not the most modern workstation in the world, but it is still a very serious machine for homelab use.
The best part is not one single component. It is the combination:
- lots of RAM;
- server/workstation CPU platform;
- ECC memory support;
- multiple storage devices;
- large chassis;
- good cooling;
- dual CPU upgrade path;
- many PCIe slots;
- enterprise build quality.
That makes it a very different experience from using a small consumer desktop as a home lab server.
Why the HP Z840 is interesting for homelabs
The HP Z840 was not designed as a cheap hobby machine. It was HP’s high-end workstation platform for demanding professional workloads.
According to HP’s Z840 documentation, the platform supports Intel Xeon E5-2600 v3 and v4 processors, uses the Intel C612 chipset, and is built around a dual CPU architecture with DDR4 memory and multiple PCIe expansion slots. HP’s technical material also describes the chassis as having sixteen memory slots, up to seven expansion slots, and multiple internal/external storage bays. That matters for homelab use because the machine was designed to be expanded.
A lot of modern consumer machines are powerful but limited. You get two RAM slots, one or two M.2 slots, maybe one PCIe slot, and not much room for storage. The Z840 is the opposite. It is big, heavy, serviceable, and full of options.
For a home lab, that means you can use it for:
- programming environments;
- multiple Linux VMs;
- Docker experiments;
- test networks;
- storage experiments;
- monitoring tools;
- security labs;
- backup testing;
- self-hosting services;
- virtualized firewalls or routers in a lab setup.
It is not the lowest-power way to run one container. But if you want one serious box for many experiments, the Z840 still makes a lot of sense.
The CPU swap: E5-2650 v3 to E5-2640 v4
The machine originally had an Intel Xeon E5-2650 v3. I replaced it with an Intel Xeon E5-2640 v4.
On paper, this may look like a strange change because both CPUs are 10-core / 20-thread parts. But the v4 chip is newer and more efficient.
Old CPU: Intel Xeon E5-2650 v3
Cores / threads: 10 / 20
Architecture generation: Haswell-EP
Process: 22 nm
TDP: 105 W
New CPU: Intel Xeon E5-2640 v4
Cores / threads: 10 / 20
Architecture generation: Broadwell-EP
Process: 14 nm
TDP: 90 W
The E5-2650 v3 is a 10-core / 20-thread Haswell-EP chip with a 105 W TDP, while the E5-2640 v4 is a 10-core / 20-thread Broadwell-EP chip with a 90 W TDP.
So the practical reason for the swap was simple:
- same core/thread count;
- newer generation;
- lower TDP;
- cheap enough to be almost silly;
- better fit for a quieter workstation/homelab setup.
Was this a huge performance upgrade? No.
Was it a nice efficiency and platform refresh for 3€? Absolutely.
That is one of the great things about used Xeon platforms: sometimes small upgrades are so cheap that they are worth doing just because they improve the machine a little and keep the experiment interesting.
Why not chase the biggest Xeon?
The HP Z840 can support much more powerful Xeon E5 v3/v4 CPUs than the E5-2640 v4. Some configurations can go far beyond this CPU class, especially in dual-processor setups.
But for a machine that sits near me and is used daily, I care about more than raw benchmark numbers.
I care about:
- idle power;
- heat;
- fan noise;
- stability;
- VM responsiveness;
- cost of upgrade;
- whether I actually need the extra cores.
There is no point installing the hottest CPU just to make the workstation louder for workloads that do not need it.
For my use case — programming and VirtualBox home lab VMs — 10 cores and 20 threads are already useful. The bigger limitation is often storage layout, RAM allocation, and how many services I want running at once.
The 96GB RAM sweet spot
The best part of this build is probably the 96GB of ECC DDR4 RAM.
For normal desktop use, that is overkill.
For homelab VMs, it is great.
RAM is what makes the machine comfortable for virtualization. CPU matters, but running multiple VMs becomes painful quickly if memory is tight.
With 96GB, I can comfortably split memory between:
- the host operating system;
- development tools;
- browser tabs;
- databases;
- Linux VMs;
- test servers;
- Docker hosts;
- security lab machines;
- monitoring or backup experiments.
Example VM allocation:
Host OS: 16GB-24GB
Linux VM 1: 4GB
Linux VM 2: 8GB
Docker test VM: 8GB
Database VM: 8GB
Windows test VM: 12GB-16GB
Security lab VM: 4GB-8GB
Remaining RAM: cache / development / browser / buffer
This is where a workstation like the Z840 becomes more useful than a small mini PC.
Many small boxes are efficient but memory-limited. The Z840 is large and older, but it gives you room.
Storage layout: NVMe plus HDDs
The current storage setup is:
256GB NVMe SSD
1TB NVMe SSD
1TB 7200 RPM HDD
1TB 7200 RPM HDD
This gives a nice split between speed and bulk storage.
A sensible layout could be:
256GB NVMe:
- operating system
- boot files
- core applications
1TB NVMe:
- VirtualBox VMs
- active projects
- databases
- Docker data
- fast scratch space
1TB HDD #1:
- backups
- ISO files
- archived VM exports
- media or bulk data
1TB HDD #2:
- second backup copy
- rsync target
- test storage
- cold data
For VMs, NVMe storage matters a lot. A VM running from a slow disk can feel terrible even if the CPU is fine.
The HDDs are still useful, but I would not run busy VM disks from them unless I had to. They are better used for backups, ISOs, logs, exports, and less performance-sensitive storage.
This connects directly to the backup topic:
Related: Backing Up Docker Containers on a Home Server
The passive GT 1030 swap
The HP Z840 came with an Nvidia Quadro K2200, which is a proper workstation card for its time.
But for my current use, I do not need workstation GPU power.
This machine is mostly for:
- programming;
- Linux work;
- VMs;
- server experiments;
- terminal work;
- browser-based dashboards;
- homelab management.
So I swapped the Quadro K2200 for a passively cooled Nvidia GT 1030.
The reason was simple:
- less noise;
- lower power use;
- enough display output for my needs;
- no small GPU fan whining in the background.
This is not the right choice for GPU compute, gaming, CAD, rendering, or heavy graphical work.
But for a quiet workstation/homelab machine, a passive low-power GPU makes sense.
The fastest GPU is not always the best GPU for a machine that should stay quiet all day.
VirtualBox today, maybe something else later
At the moment, I am using VirtualBox.
That is not the most enterprise homelab choice, but it is simple and works well for desktop-driven VM experiments.
VirtualBox is good when:
- the machine is also your workstation;
- you want quick test VMs;
- you do not want to dedicate the whole system to a hypervisor;
- you want easy snapshots and quick experiments;
- you are doing development and lab work from the same desktop.
Longer term, the Z840 could also run:
- Proxmox VE;
- VMware ESXi, depending on hardware/support constraints;
- KVM/libvirt on Linux;
- a Linux host with Docker and VirtualBox/KVM;
- a mixed workstation/server role.
If I wanted this machine to become a dedicated home server, I would probably consider Proxmox or a Linux KVM setup.
For now, VirtualBox is good enough because the machine is still my workstation.
What this HP Z840 can run as a home server
With 10 cores, 20 threads, 96GB RAM, NVMe storage and a workstation chassis, this machine can run a lot.
Examples:
- multiple Linux server VMs;
- Windows test VM;
- Docker host VM;
- Uptime Kuma monitoring;
- Grafana or Netdata monitoring;
- Samba file server;
- OpenCanary honeypot lab;
- local Git server;
- database test environment;
- backup target;
- development CI runner;
- private lab network;
- security hardening experiments.
For example, a simple homelab VM plan could look like this:
VM 1: Docker host
- 4 vCPU
- 8GB RAM
- 80GB disk
VM 2: Monitoring
- 2 vCPU
- 4GB RAM
- 40GB disk
VM 3: Database lab
- 4 vCPU
- 8GB RAM
- 100GB disk
VM 4: Security tools
- 4 vCPU
- 8GB RAM
- 80GB disk
VM 5: Windows test machine
- 4 vCPU
- 16GB RAM
- 120GB disk
VM 6: Linux desktop test
- 2 vCPU
- 4GB RAM
- 40GB disk
That still leaves plenty of RAM for the host and development work.
This is the kind of workload where an older workstation makes sense.
Dual CPU upgrade path
One of the big reasons the HP Z840 is interesting is the dual CPU architecture.
The platform was designed for one or two Intel Xeon E5-2600 v3/v4 processors. HP’s documentation describes the Z840 as a dual CPU architecture platform with sixteen memory slots and multiple PCIe slots, with some PCIe slots becoming available only when the second processor is installed.
That means the machine can be upgraded beyond my current single CPU configuration.
A second CPU can potentially give:
- more cores and threads;
- more memory bandwidth;
- access to CPU-linked PCIe slots;
- better VM density;
- more room for parallel workloads.
But it also brings trade-offs:
- higher power consumption;
- more heat;
- more fan activity;
- need for matching/compatible CPU setup;
- possible need for additional heatsink/cooling hardware;
- more complexity.
For now, I prefer the single CPU setup because the goal is not maximum benchmark performance. The goal is a useful workstation that does not become annoying to live with.
Still, the upgrade path is there. That is the point.
Upgrade ideas for the future
The Z840 still has a lot of possible upgrade paths.
More RAM
96GB is already good, but the platform can go much higher depending on DIMM type and configuration. HP documentation lists DDR4 ECC Registered and Load Reduced memory options, and the Z840 platform is built around sixteen memory slots.More RAM would make sense if I move from light VM usage to heavier virtualization.
Second CPU
A second matching CPU would make the machine more serious for VM density, but also less efficient and probably louder.
For a quiet workstation, maybe not needed.
For a dedicated homelab server, maybe interesting.
More NVMe storage
This is probably the most useful upgrade.
Fast VM storage is more noticeable than slightly more CPU in many daily workloads.
Possible storage improvements:
- larger NVMe SSD for VM storage;
- separate NVMe for databases;
- PCIe NVMe adapter card;
- dedicated backup SSD;
- replace HDDs with SATA SSDs for lower noise.
Networking
If the machine becomes a real home server, faster networking could be useful.
Possible upgrades:
- 2.5GbE NIC;
- 10GbE NIC;
- separate lab network interface;
- dedicated management interface;
- storage network experiments.
Power and noise considerations
The Z840 is not a tiny low-power server.
That should be said clearly.
If your only goal is to run Pi-hole and a small Docker container, this machine is overkill. A mini PC will be cheaper to run and easier to hide.
But if you want:
- lots of RAM;
- many VMs;
- real expansion;
- old enterprise hardware;
- quiet workstation behavior under moderate load;
- room to grow;
- one machine for development and lab work;
then a Z840 is a different kind of tool.
My power/noise choices were:
- use a lower-TDP v4 Xeon instead of chasing max cores;
- replace the Quadro K2200 with a passive GT 1030;
- use NVMe for active workloads;
- keep HDDs for bulk/backups rather than constant VM I/O;
- avoid unnecessary high-power expansion cards.
This keeps the machine more comfortable as a daily workstation.
Security angle: treat it like a server
Even if the Z840 is being used as a workstation, once it runs VMs and services, it needs to be treated partly like a server.
That means:
- firewall rules;
- updates;
- backups;
- VM isolation;
- strong passwords;
- SSH hardening if SSH is enabled;
- not exposing random services to the LAN;
- monitoring important workloads;
- documenting what runs where.
This is where the previous Linux home server posts apply directly:
- Linux Home Server Security Checklist
- UFW Firewall Rules for Home Servers
- Fail2ban for Beginners
- Lynis Hardening Checklist
A powerful workstation can become a messy lab very quickly. The trick is keeping it understandable.
Workstation or home server?
Right now, this HP Z840 is both.
It is my workstation because I use it directly for programming and daily technical work.
It is also a homelab machine because it runs VMs and gives me space to test server ideas.
That hybrid role is useful, but it needs some discipline.
If the machine is a workstation, I do not want every experiment running directly on the host.
Better pattern:
- host OS stays clean;
- development tools on host;
- server experiments inside VMs;
- Docker either inside a VM or carefully managed on host;
- important data backed up;
- lab services documented;
- temporary experiments removed.
That keeps the machine useful instead of turning it into a pile of forgotten services.
Who should consider an HP Z840 today?
An HP Z840 still makes sense if you want:
- a cheap used workstation;
- lots of RAM capacity;
- dual Xeon upgrade options;
- ECC memory;
- many PCIe slots;
- space for storage;
- a powerful Linux workstation;
- a VM lab machine;
- something more expandable than a mini PC.
It makes less sense if you want:
- the lowest possible power bill;
- a tiny silent server;
- modern single-thread performance;
- official modern workstation warranty;
- a machine that disappears behind a monitor;
- something for only one or two lightweight containers.
It is a machine for people who like old enterprise/workstation hardware and actually use the expansion.
What I would install on it for a homelab
If I were turning this Z840 into a more dedicated home server, I would probably build something like:
Host:
- Debian, Ubuntu Server, Proxmox, or another Linux base
Core:
- SSH
- UFW
- Fail2ban
- Docker or VM-based Docker host
- Backup scripts
- Uptime Kuma
- Lynis monthly audit
Services:
- Git server or Gitea
- Samba share
- Jellyfin or media service if needed
- OpenCanary lab honeypot
- Test databases
- Development VMs
- Monitoring dashboard
- Backup target
Then I would keep the host boring and put experiments inside VMs.
Boring hosts are good hosts.
My current verdict
The HP Z840 is not new, small, or ultra-efficient.
But it is still a very capable workstation and homelab platform.
With the E5-2640 v4, 96GB RAM, NVMe storage, HDDs for bulk data, and a passive GT 1030, this machine is now a good fit for what I want:
- programming;
- Linux work;
- VirtualBox VMs;
- home server experiments;
- quiet-enough daily use;
- room to upgrade later.
The 3€ CPU swap is also a good reminder of why used workstation hardware is fun. You can sometimes make small, sensible improvements for almost nothing.
Would I recommend an HP Z840 to everyone?
No.
Would I recommend it to someone who wants a serious used workstation with lots of RAM, expansion, and homelab potential?
Yes, if the price is right and they understand the power/noise trade-off.
For me, this Z840 is now exactly what I wanted: a big, slightly ridiculous, very useful workstation that can also be a home lab server.
Recommended next reading:



Comments
Post a Comment