Thinking in requirements

The first question is never "which processor is best?" but "what will this machine do?". A receptionist's PC that runs a browser and an office suite gains nothing from an expensive graphics card; a video editor's machine that has one will finish an export in a fraction of the time. Good questions to ask before choosing or ordering:

  • Which applications, and what do their vendors list as minimum and recommended requirements?
  • How much data, how fast must it be accessed, and does it need protection against a drive failure?
  • Which peripherals: number and type of monitors, docking station, special devices such as card readers or scanners.
  • Where it will be used: on a desk, in a noisy workshop, carried around, in a server room.
  • How long it must last, and what the organization already has (standard models, spare parts, management tools).

Requirements turn a vague request ("a fast computer") into something you can check: "16 GB of random-access memory (RAM), two 27-inch displays over DisplayPort, 1 TB of solid-state storage". That also makes it possible to explain afterward why a machine was chosen.

Typical builds

Certain combinations come back again and again. Each emphasizes different components.

Build What it does Components that matter most
Office PC Email, browser, office suite, video calls Modest central processing unit (CPU), integrated graphics, 8–16 GB RAM, a solid-state drive (SSD); quiet and energy-efficient; often a small form factor
Graphic, CAD or video workstation Photo and video editing, computer-aided design (CAD), 3D rendering Many CPU cores, a powerful graphics processing unit (GPU) with plenty of video memory (VRAM), 32 GB RAM or more (often error-correcting code, ECC, memory), fast NVM Express (NVMe) storage, color-accurate high-resolution displays
Gaming PC Current games at high frame rates A strong GPU first, a CPU with high clock speed, 16–32 GB RAM, fast storage, good cooling, a high-refresh-rate display
Thin client Shows a desktop that runs on a server Minimal CPU, RAM and storage; reliable network connection; display outputs and USB ports
Network-attached storage (NAS) Stores and shares files on the network Several drive bays with a redundant array of independent disks (RAID), fast network interfaces (1, 2.5 or 10 Gbit/s), ECC memory where available, low power use for 24/7 operation
Virtualization host Runs several virtual machines at once Many cores with virtualization support, a lot of RAM (the virtual machines share it), fast storage, several network interfaces

A workstation in this sense is a high-performance desktop computer built for demanding professional work such as CAD, video or data analysis. It typically has more cores, more memory (often ECC memory), a professional graphics card and certified drivers, because a crash in the middle of a long render or a subtly wrong calculation costs real money. (Some people also say "workstation" for any employee's PC; the context tells you which meaning is intended.)

A thin client is the opposite: a small, low-power computer that does little processing itself. It connects to a server or cloud service where the desktop and applications actually run (virtual desktop infrastructure or remote desktop services), and only shows the screen and passes on keyboard and mouse input. Thin clients are cheap to replace, easy to manage centrally and keep no data locally, but they are useless without the network. A normal PC that runs its own applications is called a thick (or fat) client in contrast.

Details about the components themselves are on their own pages: CPUs, Memory, Storage, Expansion Cards and Graphics and RAID.

A compatibility checklist

Compatibility means that components fit and work together: physically (connector, size, clearance), electrically (power and signal levels) and in firmware and software (the board recognizes the part, a driver exists). Most failed builds and returned upgrades come from a part that is fine on its own but does not match the rest. Check these before ordering:

Check What must match
CPU and socket The CPU must fit the board's socket and appear on the board's CPU support list. The same socket does not guarantee support.
Chipset Determines features such as overclocking, the number of Peripheral Component Interconnect Express (PCIe) lanes and Universal Serial Bus (USB) ports, and which CPU generations work.
Firmware version A CPU newer than the board may need a firmware update first — possibly with an older CPU installed, unless the board has a flashback feature.
Memory The right double data rate (DDR) generation (DDR4 and DDR5 are keyed differently and do not fit each other's slots), dual inline memory modules (DIMMs) for desktops or small outline DIMMs (SO-DIMMs) for laptops, maximum capacity per slot and in total, and ideally the board's qualified memory list.
Form factor and case The board form factor (Advanced Technology eXtended, ATX; microATX; Mini-ITX) must fit the case; the power supply form factor (ATX or the smaller small form factor, SFX) as well.
Graphics card Length and thickness (slots) against the case, a free PCIe x16 slot, and the power supply's wattage and connectors (8-pin PCIe or the newer 12V-2x6).
M.2 storage The key (M-key for NVMe drives), the length (2280 is the common size), and whether the slot supports NVMe, Serial ATA (SATA) or both. On some boards, using an M.2 slot disables certain SATA ports because they share lanes.
CPU cooler Mounting hardware for the socket, height against the case (or radiator size for liquid cooling), clearance next to tall memory modules, and enough cooling capacity for the CPU.
Operating system Driver support for the hardware, and the OS's own requirements (Windows 11, for example, requires Trusted Platform Module (TPM) 2.0 and Secure Boot capable Unified Extensible Firmware Interface (UEFI) firmware).

The motherboard manual and the vendor's support pages are the authority here, more than any retailer's product listing. See Motherboards for sockets, chipsets and form factors.

Bottlenecks

A bottleneck is the component that limits the performance of the whole system for a particular task, because the other parts have to wait for it. Improving any other part does nothing until the bottleneck is removed. Typical examples:

  • A PC with a fast processor and a hard disk drive (HDD) feels slow at start and when opening programs: the disk is the bottleneck.
  • Too little RAM makes the operating system swap memory to disk, and suddenly every task waits for storage.
  • In games at high resolution the graphics card usually limits the frame rate; at low resolution the CPU often does.
  • A fast network-attached storage device on a 1 Gbit/s network can deliver at most about 125 MB/s, however fast its drives are.

A file copy is a chain, and the slowest link sets the speed. Moving a 50 GB video project from an internal NVMe SSD to an external hard disk:

# Sequential speeds in MB/s. Drive figures are typical spec-sheet values;
# link figures are the line rate after encoding, before protocol overhead.
usb3_link = 5000 * 8 / 10 / 8     # USB 3.2 Gen 1: 5 Gbit/s, 8b/10b encoding
usb2_link = 480 / 8               # USB 2.0: 480 Mbit/s

setups = {
    "Rear USB 3 port": {"NVMe SSD": 7000, "USB 3.2 Gen 1 link": usb3_link,
                        "External HDD": 200},
    "Old USB 2.0 hub": {"NVMe SSD": 7000, "USB 2.0 link": usb2_link,
                        "External HDD": 200},
}

project_mb = 50_000               # a 50 GB video project

for setup, chain in setups.items():
    slowest = min(chain, key=chain.get)
    speed = chain[slowest]
    minutes = project_mb / speed / 60
    print(f"{setup}: limited by {slowest} ({speed:.0f} MB/s)")
    print(f"  copying 50 GB takes about {minutes:.0f} minutes")
Rear USB 3 port: limited by External HDD (200 MB/s)
  copying 50 GB takes about 4 minutes
Old USB 2.0 hub: limited by USB 2.0 link (60 MB/s)
  copying 50 GB takes about 14 minutes

With a USB 3 port, the hard disk is the bottleneck: a faster cable or port would not help, a faster external drive would. Through the old hub, the USB 2.0 link is the bottleneck, and real USB 2.0 transfers are slower still, because protocol overhead takes a large share of the 480 Mbit/s. To find the bottleneck on a running system, watch the utilization of CPU, memory, disk and network in Task Manager (Windows) or tools such as top (Linux) while the slow task runs: the resource that sits near 100% is the suspect.

A copy chain: NVMe SSD at 7000 MB/s, then a USB link at 500 MB/s, then an external hard disk at 200 MB/s. The hard disk is the bottleneck and sets the speed of the whole copy. NVMe SSD 7000 MB/s USB 3 link 500 MB/s External HDD 200 MB/s bottleneck whole copy runs at 200 MB/s
The slowest link in the chain sets the speed. Making the SSD or the port faster changes nothing here.

Sizing the power supply

A power budget is the sum of the maximum power every component can draw at the same time, compared with what the power supply unit (PSU) can deliver. It answers two questions: is this PSU big enough, and what size should a new one be? Use the manufacturers' figures: for the CPU its maximum power (which can be well above its TDP, the thermal design power), for the graphics card its total board power. Then add headroom:

  • Components briefly draw more than their average (power spikes, especially graphics cards).
  • Power supplies are usually most efficient somewhere around half load, and run cooler and quieter below their maximum.
  • Later upgrades — another drive, a faster graphics card — need room.
# (part, quantity, estimated peak watts each)
parts = [
    ("CPU (maximum package power)", 1, 125),
    ("Graphics card (board power)", 1, 220),
    ("Motherboard and chipset", 1, 50),
    ("Memory module", 2, 5),
    ("NVMe SSD", 2, 8),
    ("Case fan", 4, 3),
    ("USB devices", 1, 15),
]
HEADROOM = 1.30                   # 30% on top of the estimated peak
PSU_SIZES = [450, 550, 650, 750, 850, 1000, 1200]

total = 0
for name, count, watts in parts:
    subtotal = count * watts
    total += subtotal
    print(f"{count} x {name:<28} {subtotal:>4} W")

target = total * HEADROOM
psu = next(size for size in PSU_SIZES if size >= target)
print(f"Estimated peak load:{total:>18} W")
print(f"With 30% headroom:{target:>20.0f} W")
print(f"Choose a {psu} W power supply")
1 x CPU (maximum package power)   125 W
1 x Graphics card (board power)   220 W
1 x Motherboard and chipset        50 W
2 x Memory module                  10 W
2 x NVMe SSD                       16 W
4 x Case fan                       12 W
1 x USB devices                    15 W
Estimated peak load:               448 W
With 30% headroom:                 582 W
Choose a 650 W power supply

The per-part figures are illustrative estimates; take real values from the spec sheets, and treat a graphics card vendor's recommended PSU size as a minimum. Wattage alone is not enough either: the PSU must also have the right connectors and enough capacity on the 12 V rail, where CPU and graphics card draw most of their power. More on efficiency ratings and connectors is on Power Supplies and Power.

Upgrading an existing computer

An upgrade is worth it when a specific part is the bottleneck and the rest of the machine is still good enough. The two upgrades that usually help most:

  • An SSD instead of a hard disk. Start-up, program launches and updates become several times faster. It is the single most noticeable upgrade for an older PC or laptop.
  • More RAM, when the machine regularly runs out of memory (memory use near its limit in Task Manager, heavy disk activity from paging). More RAM than the workload uses brings nothing.

A new CPU or motherboard is rarely a simple upgrade: a newer CPU generation often needs a new board, and a new board often needs new memory. At that point it is usually a replacement, not an upgrade.

Checking what the machine supports

Before ordering, find out exactly what is installed and what the board accepts. The model number and the manual (or the vendor's support site) are the most reliable sources. From the operating system you can see what is installed now:

Get-CimInstance Win32_PhysicalMemory | Select-Object BankLabel, Capacity, Speed
BankLabel   Capacity Speed
---------   -------- -----
BANK 0    8589934592  3200
BANK 2    8589934592  3200

Two modules of 8 GiB (8,589,934,592 bytes each) at 3200 megatransfers per second (MT/s). On Linux, dmidecode reads the same information from the firmware tables, including what the board reports as its maximum:

sudo dmidecode -t 16
# dmidecode 3.4
Getting SMBIOS data from sysfs.
SMBIOS 3.3.0 present.

Handle 0x000E, DMI type 16, 23 bytes
Physical Memory Array
	Location: System Board Or Motherboard
	Use: System Memory
	Error Correction Type: None
	Maximum Capacity: 64 GB
	Error Information Handle: Not Provided
	Number Of Devices: 4

Number Of Devices: 4 means four memory slots, two of which are in use in the Windows example above. Treat the firmware's "Maximum Capacity" as a hint only: it is sometimes wrong, and the manual has the final word. Tools such as msinfo32 on Windows or lscpu and lsblk on Linux show the CPU and the drives.

Laptop limits

Laptops offer far fewer options. Memory is often soldered to the board, partly or entirely, so it cannot be expanded; there may be a single M.2 slot; and the CPU and graphics are rarely replaceable (some older and desktop-replacement laptops used socketed CPUs or Mobile PCI Express Module, MXM, graphics modules). What can usually be done: replace or add an SSD, add memory where a free SO-DIMM slot exists, and replace the battery. Check the vendor's service manual before promising a customer anything. See Laptops and Mobile Devices.

Before and after an upgrade

Hardware work on someone else's computer follows a routine that protects the data and makes the result provable:

  1. Back up the user's data, or confirm that a current backup exists, before touching storage.
  2. Document the starting point: model, serial number, installed parts, and a quick benchmark or observation of the problem ("start-up takes 3 minutes").
  3. Prepare: download drivers and any firmware update the new part needs; suspend BitLocker if the firmware or boot configuration will change.
  4. Work safely: power off, unplug, and take electrostatic discharge precautions; see Safety and Handling.
  5. Verify: the firmware and operating system detect the new part with the full capacity and speed, the original problem is gone, and nothing else broke (network, audio, other drives).
  6. Record what was changed in the ticket or asset inventory, including the serial numbers of new parts, so warranty claims and later troubleshooting are possible.

End of life: when to replace

Every computer reaches a point where upgrading or repairing it no longer makes sense. Signs that it is time to replace:

  • No more security updates: the operating system or the vendor's firmware and drivers are out of support. Windows 10, for example, reached its end of support in October 2025, and computers that cannot run Windows 11 stop receiving regular security updates, unless enrolled in paid Extended Security Updates (ESU) — for consumers until October 2026.
  • Repair costs approach the price of a new machine, or parts are no longer available.
  • Requirements have grown past what the platform can reach even when fully upgraded.
  • Warranty and lifecycle policy: many organizations replace hardware on a fixed cycle, often three to five years, so that failures stay predictable.

Replacement is not the end of the work: the old machine's data must be removed securely, and the hardware recycled according to the rules for electronic waste. See Safety and Handling for disposal; secure data removal belongs to the Security topic.