Every server Unmetered traffic, DDoS protection and IPMI included. No setup fees, no contract. Unmetered traffic on every server See pricing

Blog · Hardware

AMD EPYC 9005 'Turin' on dedicated servers: what changes

What AMD EPYC 9005 Turin brings to dedicated servers, from Zen 5 cores and 12 DDR5 channels to PCIe 5.0 NVMe, and how to choose between single and dual socket.

  • FlexDedi Engineering
  • 6 min read

Try it on

Pro 32

  • AMD EPYC 9355P · 32 cores
  • 384 GB DDR5-6000 ECC
  • 2 × 3.84 TB NVMe Gen5
  • 25 Gbps unmetered
On this page

AMD EPYC 9005, code-named "Turin", is AMD's Zen 5 server generation. Every FlexDedi Pro, Max and GPU server runs on it. This post covers what changed compared with the previous generation, at the level that matters when you choose a server.

You will not find benchmark numbers here. Results depend on your code, your data and your settings, so the last section explains how to measure your own workload instead.

Zen 5 at a glance

Zen 5 is a substantially reworked core. At a high level, AMD widened the front end that fetches and decodes instructions, added execution units, improved branch prediction and enlarged the L1 data cache. The result is more work done per clock cycle, on top of clock speeds that stay high.

The change most visible to software is AVX-512. Zen 4 supported these instructions but executed 512-bit operations in two 256-bit halves. Zen 5 cores in EPYC 9005 have a full 512-bit data path. Code that already uses AVX-512, such as compression, hashing, columnar analytics and CPU-side inference, benefits without changes.

The family spans a wide range: up to 128 Zen 5 cores per socket, or up to 192 of the denser Zen 5c cores. Our Pro and Max servers use standard Zen 5 parts with 32 to 96 cores per socket, which keep boost clocks of 4.4 to 4.5 GHz for latency-sensitive work.

12 DDR5 channels per socket

Each EPYC 9005 socket has 12 DDR5 memory channels. At DDR5-6000, one channel moves at most 48 GB/s in theory (6,000 MT/s × 8 bytes), so 12 channels give a theoretical peak of 576 GB/s per socket. Sustained bandwidth in real applications is lower, and it is worth measuring if your workload is bound by memory.

To get that bandwidth, every channel needs a DIMM. That is why our memory sizes look unusual: 384 GB is 12 × 32 GB, 576 GB is 12 × 48 GB, 768 GB is 12 × 64 GB and 1,152 GB is 12 × 96 GB. The dual-socket Max 192 uses 24 DIMMs for 1.5 TB. We go deeper into this in Why our servers have 384, 576 or 1,152 GB of RAM.

PCIe 5.0 and NVMe Gen5

A single EPYC 9005 socket provides 128 lanes of PCIe 5.0. Each lane runs at 32 GT/s, twice the rate of PCIe 4.0, so a standard x4 NVMe drive has a link ceiling of about 16 GB/s in each direction, against about 8 GB/s for Gen4.

Two caveats keep expectations honest. Drives do not reach the link ceiling in every workload, and random I/O at low queue depth depends more on the flash and the controller than on the link. Gen5 shines in sequential and highly parallel I/O: restores, rebuilds, large scans and many concurrent clients.

Every Pro, Max and GPU server uses NVMe Gen5 drives. The Core series runs on the EPYC 4005 platform with NVMe Gen4 drives.

Single socket or dual socket

The Pro series, the Max 96 and both GPU servers use single-socket "P" processors. The Max 192 uses two EPYC 9655 processors, the dual-socket-capable version of the 96-core part.

Pro 32Pro 48Pro 64Max 96Max 192
CPUEPYC 9355PEPYC 9455PEPYC 9555PEPYC 9655P2 × EPYC 9655
Cores / threads32 / 6448 / 9664 / 12896 / 192192 / 384
Base / boost3.55 / 4.4 GHz3.15 / 4.4 GHz3.2 / 4.4 GHz2.6 / 4.5 GHz2.6 / 4.5 GHz
Memory384 GB576 GB768 GB1,152 GB1.5 TB
Port25 Gbps25 Gbps2 × 25 Gbps2 × 25 Gbps2 × 100 Gbps
Price$749/mo$999/mo$1,349/mo$1,899/mo$2,999/mo

A single socket keeps things simple. All memory is attached to the one processor, so every core reaches every byte at the same cost, and software needs no NUMA tuning to perform well. With up to 96 cores and 1,152 GB on a Max 96, a single socket covers most workloads.

Two sockets double the cores, the memory channels and the theoretical bandwidth. The cost is that memory attached to the other socket is reached over the inter-socket links, with higher latency. Hypervisors that pin each VM to one socket, and databases that are NUMA-aware, handle this well. Run numactl --hardware or lscpu to see how your server's memory is split into nodes.

What it means for your workload

Databases

Many database operations run on a single core, so per-core speed matters: a PostgreSQL query without parallel workers, for example, runs on one core. High boost clocks and Zen 5's higher instructions per clock help there.

Capacity matters just as much. The 384 GB of a Pro 32 keeps a large working set in memory, and the 12 channels feed analytical scans that read far more data than they return. When data has to come from disk, NVMe Gen5 helps with checkpoints, restores and other large sequential I/O. There is more on choosing hardware for database workloads on our solutions page.

Virtualization

Virtualization hosts need cores, memory and bandwidth in proportion. Every single-socket Pro and Max server has 12 GB of memory per core, so memory grows in step with cores as you move up the range. A Pro 64 with 128 threads and 768 GB, or a Max 96 with 192 threads and 1,152 GB, makes a dense Proxmox VE or KVM host, and the 12 channels keep memory bandwidth per core reasonable as you pack in VMs. Our Proxmox guide walks through the setup.

CI and build farms

Compilation spreads well across cores, so more cores shorten wall-clock build times until linking or tests become the serial step. Boost clocks then carry the serial parts. NVMe Gen5 speeds up checkouts, dependency caches and container image layers, and unmetered traffic means pulling images and artifacts never adds egress fees.

If your pipelines are mostly single-threaded, a Core 16X, with a 5.7 GHz boost and 128 MB of L3 from 3D V-Cache, can be the better fit. See CI/CD on dedicated servers for typical setups.

Measure, do not guess

The only benchmark that matters is your workload on the hardware. Order the configuration you are considering, run your real tests, such as pgbench against a copy of your data, your slowest build or a load test of your API, and compare against what you run today.

Billing is monthly with no long-term contract, so a one-month trial costs one month. If the numbers do not justify the move, cancel, and the server stays active until the end of the paid period.

Your next server is minutes away.

Deploy a Core 16 for $299/mo, or let our engineers size the right fleet for you.

  • No setup fees
  • Unmetered traffic
  • Cancel anytime