On this page 11 sections
- The short version
- What is different between the 9950X and the 9950X3D?
- What do benchmarks show for server workloads?
- Which game servers benefit from the 9950X3D?
- Linux: keep the game server on the cache CCD
- How to measure: tick time, not player counts
- 128 or 192 GB of RAM?
- Network and DDoS protection
- Which one should you rent?
- Quick answers
- Sources
The Ryzen 9 9950X and 9950X3D share 16 Zen 5 cores, 4.3/5.7 GHz clocks and a 170 W TDP; the 9950X3D adds 64 MB of stacked L3 to one chiplet, for 128 MB in total. Choose it for a few tick-bound servers you can pin to that chiplet, and the 9950X for many small instances or more cities.
The short version
| As of October 2026 | Ryzen 9 9950X | Ryzen 9 9950X3D |
|---|---|---|
| Cores / threads | 16 / 32 | 16 / 32 |
| Base / max boost clock | 4.3 / 5.7 GHz | 4.3 / 5.7 GHz |
| L3 cache | 64 MB (32 MB per chiplet) | 128 MB (96 MB on one chiplet, 32 MB on the other) |
| Default TDP | 170 W | 170 W |
| Phoronix geometric mean, about 400 Linux tests | 190.47 | 195.18 (+2.5%) |
| PassMark single-thread rating | 4,726 | 4,737 |
| PowerDedi configuration | 128 GB DDR5, 2 × 1.92 TB NVMe | 192 GB DDR5, 2 × 3.84 TB NVMe |
| Price | $159/month | $219/month |
| Cities | Amsterdam, Frankfurt, London, New York, Miami, Los Angeles, Singapore, Tokyo | Amsterdam, Frankfurt, New York, Los Angeles |
Both configurations are in stock, delivered about 15 minutes after payment confirmation, with their own 10 Gbps unmetered port. Neither uses ECC memory; the EPYC 4585PX is our V-Cache option with ECC.
What is different between the 9950X and the 9950X3D?
On AMD’s specification pages, the two processors match line for line except one. Both have 16 cores and 32 threads, a 4.3 GHz base and 5.7 GHz maximum boost clock, 16 MB of L2 cache, a 170 W default TDP, the AM5 socket, two DDR5 memory channels, AVX-512, and 28 PCIe 5.0 lanes, 24 of them usable. The exception is the L3 cache: 64 MB on the 9950X, 128 MB on the 9950X3D. The 9950X launched on 15 August 2024, the 9950X3D on 12 March 2025.
Both are built from two eight-core chiplets (CCDs) and an I/O die. On the 9950X, each CCD has 32 MB of L3. The 9950X3D adds a 64 MB cache die to one CCD only, so eight cores see 96 MB of L3 and the other eight see 32 MB. This is AMD’s second-generation 3D V-Cache: since the Ryzen 7 9800X3D, the cache die sits below the compute die instead of on top of it, which AMD says puts the cores closer to the cooler. Tom’s Hardware notes that this is why the 9950X3D keeps the 9950X’s 170 W rating, where the previous-generation 7950X3D was rated 50 W lower.
That asymmetry is the whole story. The Linux documentation for AMD’s driver calls one CCD the “faster” one and the other the one with the “larger L3”, and the 9950X3D only pays off when the right threads land on the cache CCD. On Windows, Tom’s Hardware describes how AMD’s chipset driver parks cores and steers games it recognizes to that CCD; it is designed for desktop games, not headless servers. On a Linux game server, placement is up to you, as the Linux section below explains.
AMD has since released a version without the asymmetry. The Ryzen 9 9950X3D2 Dual Edition, launched on 22 April 2026, has cache stacked on both chiplets for 192 MB of L3, a 200 W TDP and a 5.6 GHz maximum boost, according to AMD. PowerDedi does not offer it, and we have not seen game-server measurements for it either.
What do benchmarks show for server workloads?
Phoronix ran about 400 Linux benchmarks for its 9950X3D review in March 2025, with both chips on the same ASRock X870E board, 2 × 16 GB of DDR5-6000, Ubuntu 24.10 and Linux 6.13. The server-type results:
| Test (Phoronix, March 2025) | 9950X | 9950X3D | Difference |
|---|---|---|---|
| Geometric mean, about 400 tests | 190.47 | 195.18 | +2.5% |
| ClickHouse, 100M rows, first run (queries/min) | 274.37 | 313.49 | +14.3% |
| ClickHouse, 100M rows, third run (queries/min) | 292.22 | 349.79 | +19.7% |
| nginx, 1,000 connections (requests/s) | 186,725 | 220,857 | +18.3% |
| nginx, 500 connections (requests/s) | 223,928 | 237,562 | +6.1% |
| PostgreSQL 17, read-only, 500 clients (TPS) | 2,068,560 | 2,098,303 | +1.4% |
| Apache Cassandra 5.0, writes (op/s) | 343,756 | 346,044 | +0.7% |
| Linux kernel build, allmodconfig (seconds, lower is better) | 549.97 | 531.88 | 3.3% faster |
| LLVM build (seconds, lower is better) | 272.85 | 257.79 | 5.5% faster |
Phoronix summed it up as the 9950X3D being “slightly faster” overall, with large gains concentrated in technical computing (simulation codes such as OpenFOAM and GROMACS), some AI inference, code compilation and a few server programs such as ClickHouse. Power was similar: across the whole run, the 9950X3D averaged 144.9 W of CPU power and the 9950X 149.0 W.
The same pattern shows up on a server platform. For its EPYC 4005 launch review, Phoronix tested the EPYC 4585PX, AMD’s server version of the 9950X3D, next to the EPYC 4565P, which has the 9950X’s specifications (16 cores, 4.3/5.7 GHz, 64 MB of L3, 170 W), in the same Supermicro server with 2 × 32 GB of ECC DDR5-5600:
| Test (Phoronix, May 2025) | EPYC 4565P, 64 MB L3 | EPYC 4585PX, 128 MB L3 | Difference |
|---|---|---|---|
| Geometric mean, 200+ tests | 67.25 | 70.06 | +4.2% |
| ClickHouse, first run (queries/min) | 243.95 | 290.74 | +19.2% |
| nginx, 1,000 connections (requests/s) | 172,894 | 204,495 | +18.3% |
| PostgreSQL 17, read-only, 800 clients (TPS) | 1,678,694 | 1,905,425 | +13.5% |
| PostgreSQL 17, read/write, 500 clients (TPS) | 40,699 | 40,055 | −1.6% |
| MariaDB 11.5, read/write, 64 threads (queries/s) | 167,908 | 164,548 | −2.0% |
| RocksDB 9.0, random read (op/s) | 166.6 million | 161.9 million | −2.9% |
Across both reviews, the extra cache helps a lot in a minority of workloads, and in the results above it cost at most about 3% where it did not help. None of these tests is a game server, though, and we found no published benchmark of Minecraft, Rust or Factorio servers comparing these chips under controlled conditions.
Which game servers benefit from the 9950X3D?
Searches for the “best CPU for a Minecraft server” or a “Rust server CPU” mostly lead to single-thread charts, and on those the two chips tie: 4,726 and 4,737 in PassMark’s single-thread ranking. The cache is the only real variable, and nobody has measured it for game servers. What the sources do support is narrower:
- A game server is a tick loop. spark’s documentation explains that a Minecraft server aims for 20 ticks per second, one every 50 ms, on its main server thread: incoming player packets, entity movement, mob AI and pathfinding all happen inside a tick. Ticks cannot run in parallel, so one slow tick delays everything after it. A busy world is therefore limited by the speed of one thread, which depends on how often its data is found in cache as well as on clock speed.
- Lightly threaded code responds to the cache. When Phoronix switched the 9950X3D’s Linux driver to prefer the cache CCD, single- and lightly threaded jobs sped up: a Java benchmark (Renaissance, Apache Spark PageRank) took 1,676 ms instead of 2,042 ms, the Z3 theorem prover 11.45 s instead of 16.10 s, and zstd level-12 compression rose from 292 to 365 MB/s. These are not game servers, but like a server’s main loop they depend on one or a few busy cores.
- Simulations gained most. In Phoronix’s review, scientific simulation codes were among the largest winners. Simulation-heavy game servers, such as large worlds full of entities or big Factorio factories, are the plausible candidates for the same effect. That is an inference, not a measurement.
- Rust asks for CPU speed and memory. Facepunch’s server guide says the more players, the faster the CPU needs to be, and asks for 12 GB of free RAM per server, more on a 6k map. It gives no per-CPU figures.
In practice: when profiling shows a server’s main thread is the bottleneck and its world is large, the 9950X3D is the chip to test first. When the load is spread over many small instances, most of them run on the 32 MB half anyway, since the cache CCD has only eight cores, and the 9950X’s lower price and wider availability matter more.
Linux: keep the game server on the cache CCD
Linux has included AMD’s 3D V-Cache Optimizer driver since kernel 6.13. It exposes one setting, amd_x3d_mode: “frequency” ranks the cores of the faster CCD first, “cache” ranks the cores of the larger-L3 CCD first. The ranking influences where the scheduler first places new tasks; it does not confine anything. Phoronix found the 9950X3D defaulting to “frequency”, which favors the CCD without the extra cache.
1. Find the CPUs that share the large L3. Each logical CPU reports its L3 cache size and the CPUs it shares that cache with:
# L3 size seen by every logical CPU: two different values on a 9950X3D
grep -H . /sys/devices/system/cpu/cpu*/cache/index3/size
# cache level, size and sharing CPUs for CPU 0; repeat for a CPU from the other group
grep -H . /sys/devices/system/cpu/cpu0/cache/index3/{level,size,shared_cpu_list}
The shared_cpu_list of a CPU in the larger group is the list to use below. A list such as 0-7,16-23 is common, but use the one your server prints.
2. The simple option: switch the preference. If the driver is loaded, one write changes it:
cat /sys/bus/platform/drivers/amd_x3d_vcache/AMDI0101:00/amd_x3d_mode
echo cache | sudo tee /sys/bus/platform/drivers/amd_x3d_vcache/AMDI0101:00/amd_x3d_mode
The file exists only on Linux 6.13 or later with the driver built in, and only if the firmware provides the ACPI device named in the path. Ubuntu 26.04 LTS ships Linux 7.0; Debian 13 ships the 6.12 series, which predates the driver. The setting is global and has a cost: in Phoronix’s tests, “cache” mode slowed some heavily threaded server software, CockroachDB by 8% (from 155,224 to 143,040 operations per second).
3. The precise option: pin the process. taskset starts a program on a list of CPUs or moves a running one; -a applies the change to every thread of the process, which matters for multi-threaded servers such as Java ones:
# start a Paper server on the cache CCD (example CPU list: use yours)
taskset -c 0-7,16-23 java -Xms10G -Xmx10G -jar paper.jar --nogui
# move a running server, all of its threads included (12345 = its PID)
sudo taskset -a -pc 0-7,16-23 12345
For a systemd service, put the list in the unit with CPUAffinity=, or confine the service through the cgroup cpuset controller with AllowedCPUs=:
[Service]
CPUAffinity=0-7 16-23
Pin only what matters. Give the eight cache cores to the one or two servers whose tick time you care about, and leave backups, databases and web panels on the other CCD.
How to measure: tick time, not player counts
“How many players can it hold?” has no fixed answer: a vanilla survival world and a modded world full of machines load the same CPU very differently. Measure what the game itself measures, with the same world and the same load on each configuration.
- Minecraft (Paper). Paper has bundled the spark profiler since 1.21.
/spark tpsshows ticks per second and milliseconds per tick (MSPT), including the median and 95th percentile; the target is 20 TPS, which means 50 ms or less per tick. In a profile (/spark profiler start --timeout 600), spark reads less than 20% of the main thread’s time spent sleeping as a server working hard, and less than 5% as a server that is probably lagging. - Rust. The
fpsconsole command returns the server’s current frame rate, andfps.limitcaps it. Record it at the same population and time of day on each machine. - Factorio. The game has a built-in benchmark that loads a save and runs a fixed number of ticks, which makes repeatable comparisons easy:
factorio --benchmark my-save.zip --benchmark-ticks 1000 --benchmark-runs 3.
A 9950X3D can answer the X3D question on its own: run the benchmark pinned to the cache CCD, then pinned to the other one. The second run approximates a 9950X chiplet, with the same clocks and 32 MB of L3, so the gap shows what the cache is worth for your world. For general server software, the Phoronix Test Suite can rerun the tests of any published OpenBenchmarking result and show yours side by side; phoronix-test-suite benchmark 2503103-SYST-AMDRYZE95 repeats all of Phoronix’s 9950X3D review, so expect it to take hours.
128 or 192 GB of RAM?
Memory decides how many servers fit, not how fast one runs. PaperMC recommends 6–10 GB of heap per Minecraft server “no matter how few players”, keeping 1–1.5 GB beyond the heap for Java and the system, and warns that 32 GB for one server mostly wastes money. Facepunch asks for 12 GB of free RAM per Rust server. Keeping 8 GB for the operating system, simple arithmetic gives:
| Configuration | Paper servers at 10 GB heap + 1.5 GB | Rust servers at 12 GB |
|---|---|---|
| Ryzen 9 9950X, 128 GB | about 10 | about 10 |
| Ryzen 9 9950X3D, 192 GB | about 16 | about 15 |
Long before those numbers, the CPU becomes the limit: 16 cores in total, eight of them on the cache CCD. The 192 GB configuration earns its keep with mixed loads, such as several game servers plus their databases, map renderers and backups, and with its 2 × 3.84 TB of NVMe for world saves.
One trade-off comes with 192 GB. AM5 has two memory channels, and AMD rates two modules per channel at DDR5-3600 instead of DDR5-5600; as heise noted for the same platform, capacities above 128 GB need more than two modules. Phoronix measured a 1.1% drop in the EPYC 4585PX’s geometric mean when going from DDR5-5600 to DDR5-4800; we have not found a published test at DDR5-3600. A larger L3 means fewer trips to memory, but if your server turns out to be memory-bound, measure rather than assume.
Network and DDoS protection
Players connect straight to a game server’s IP address, so it is more exposed than a website behind a CDN. Every PowerDedi server includes always-on network DDoS mitigation and its own 10 Gbps unmetered port; see DDoS protection for how the mitigation works and game server hosting for typical setups. Rust uses UDP for its game and query ports, according to Facepunch. Open only the ports your games need, and harden SSH with our first-hour security checklist.
Which one should you rent?
| If you… | Rent | Price | Why |
|---|---|---|---|
| Run one to a few large worlds whose main thread is the bottleneck | Ryzen 9 9950X3D, 192 GB, 2 × 3.84 TB NVMe | $219/month | 96 MB of L3 for pinned servers; the most memory and disk of the three |
| Run many small or medium instances, or need London, Miami, Singapore or Tokyo | Ryzen 9 9950X, 128 GB, 2 × 1.92 TB NVMe | $159/month | Same clocks on all 16 cores; available in eight cities |
| Sell game hosting, or run databases next to the servers, and want ECC memory | EPYC 4585PX, 128 GB ECC, 2 × 1.92 TB NVMe | $179/month | The 9950X3D’s silicon with ECC; Amsterdam, Frankfurt, London, New York |
| Run a single community server | Ryzen 9 9900X or Ryzen 7 7700 | $109 or $79/month | 12 or 8 cores; PassMark single-thread ratings of 4,670 and 4,050 |
Some honest limits. The 9950X3D configuration is available in four cities only. None of our Ryzen configurations uses ECC memory. PassMark rates the EPYC 4585PX at 4,540 for single-thread, slightly below the 9950X3D, although AMD specifies identical clocks; we compare the three in detail in EPYC 4585PX vs Ryzen 9 9950X3D vs 9950X. And if one small server is all you need, a 16-core machine is more than it can use.
Quick answers
Is the 9950X3D faster than the 9950X for a Minecraft server?
Not automatically. The two have the same clocks and near-identical single-thread ratings; the 9950X3D can only be faster when the server’s main thread runs on its cache CCD and the world benefits from the larger cache. Pin the server, then compare MSPT on the same world.
Does a Rust server need 3D V-Cache?
No published data says so. Facepunch asks for a faster CPU as player counts grow and 12 GB of RAM per server; measure server FPS on each CCD of a 9950X3D before deciding that the cache is worth paying for.
Should I wait for the dual-cache 9950X3D2?
It removes the need to pin, but it is rated at 200 W and PowerDedi does not offer it. On a 9950X3D, pinning gives one or two servers the same 96 MB of L3 that each 9950X3D2 chiplet has.
Sources
- AMD Ryzen™ 9 9950X3D Gaming and Content Creation Processor, AMD Ryzen™ 9 9950X, AMD Ryzen™ 9 9950X3D2 Dual Edition Desktop Processor and AMD EPYC™ 4585PX — AMD product specifications
- The Gaming Legend Continues — AMD Introduces Next-Generation AMD Ryzen 7 9800X3D Processor — AMD, 31 October 2024
- sysfs-bus-platform-drivers-amd_x3d_vcache and sysfs-devices-system-cpu — Linux kernel ABI documentation
- AMD Ryzen 9 9950X3D Delivers Excellent Performance For Linux Developers, Creators & Technical Computing — Phoronix, 11 March 2025
- AMD’s 3D V-Cache Optimizer Driver For Squeezing More Ryzen 9 9950X3D Performance — Phoronix, 12 March 2025
- AMD EPYC 4565P & EPYC 4585PX Benchmarks Against Xeon 6369P: EPYC 4005 Champions Entry-Level Server Performance and AMD EPYC 4585PX & EPYC 4565P With DDR5-4800 vs. DDR5-5600 Performance — Phoronix, May 2025
- AMD Ryzen 9 9950X3D Review: Stunning gaming performance meets top-tier productivity — Tom’s Hardware, 11 March 2025
- AMD Epyc 4005: Six processors for small servers with ECC RAM — heise online, 13 May 2025
- CPU single-thread performance — PassMark Software
- TPS and MSPT and The Tick Loop — spark documentation
- Aikar’s flags and Profiling — PaperMC Docs
- Creating a server and Useful Console Commands — Rust Wiki, Facepunch; Command line parameters — Factorio Wiki
- taskset(1), systemd.exec(5) and systemd.resource-control(5) — Linux manual pages
- Ubuntu 26.04 LTS summary — Canonical; What’s new in Debian 13 — Debian




