Do You Want an AMD EPYC 7003 Series Processor for SQL Server?

Introduction

As you may have heard, AMD officially announced and released the new AMD EPYC 7003 Series of server processors on March 15th, 2021. This family includes nineteen different SKUs. Of those, five of them are particularly well suited for SQL Server usage. This post will try to answer the question, “Do You Want an AMD EPYC 7003 Series Processor for SQL Server?“.

Do You Want an AMD EPYC 7003 Series Processor for SQL Server?
AMD CEO Dr. Lisa Su Holding EPYC Milan Processor

AMD EPYC 7003 Series

Every SKU in the lineup shares some basic features. Unlike Intel, AMD does not do any restrictive product segmentation based on price. Every single SKU has eight channels of DDR4-3200 and can support 4TB of RAM per socket. You don’t have to pay a premium for extra memory capacity. Every SKU supports 128 PCIe 4.0 lanes and has SMT and Turbo Boost.

Do You Want an AMD EPYC 7003 Series Processor for SQL Server?
AMD EPYC Models

In addition, every single SKU in the lineup gets all the small architectural changes and improvements of Zen 3 compared to Zen 2. This amounts to an average of a 19% improvement in instructions per clock (IPC). On top of this, most EPYC 7003 Series SKUs have higher base and boost clock speeds compared to the previous EPYC 7002 Series. They also have higher cTDP ratings, so more power is available to boost clock speeds.

Do You Want an AMD EPYC 7003 Series Processor for SQL Server?
Major Changes vs. Zen 2

One of the major improvements is a unified 32MB L3 cache on each CCX.

Do You Want an AMD EPYC 7003 Series Processor for SQL Server?
AMD EPYC SOC Architecture

Flagship AMD EPYC 7763 SKU

The top of the line AMD EPYC 7003 Series SKU is the AMD EPYC 7763. It has 64C/128T with a base clock of 2.45 GHz and a boost clock of up to 3.50 GHz. You have a 256MB L3 cache and a default TDP of 280 watts. The unified L3 cache means that each of your cores gets 8MB of L3 cache, but a single active core can access all 32MB of cache in that CCX. That 280W power budget means more of your 64 cores will be running at higher clock speeds more frequently.

If you are going to get a 64C SKU for SQL Server, this is the one you want. Do not make the mistake of getting the less expensive EPYC 7713 or EPYC 7713P. They have much lower base clock speeds and lower default TDP and cTDP ratings. Because of that, I don’t think you will see the maximum boost clock of 3.675 GHz very often.

Honestly, most SQL Server workloads are going to be better off running on one of the “F” SKUs described below. If you are a SQL Server DBA, you should favor using one of the “F” SKUs.

Core Performance “F” SKUs

In this generation, AMD has four core optimized, “F” SKUs that are particularly well suited for SQL Server usage. They range from 32C/64T down to 8C/16T. This range of core counts is really the sweet spot for most SQL Server workloads. It is almost like AMD designed them this way on purpose…

AMD EPYC CPU Positioning

With lower core counts and faster cores, you have the chance to both reduce your SQL Server licensing costs and have better single-threaded CPU performance. In most cases, you should prefer a one-socket server rather than a two-socket server. This is because of the reduced NUMA overhead, among other things.

AMD EPYC 75F3

The top of the stack here is the AMD EPYC 75F3. It has 32C/64T with a base clock of 2.95 GHz and a boost clock of up to 4.00 GHz. You have a 256MB L3 cache and a default TDP of 280 watts. That large cache and 280W power budget is the same as the flagship AMD EPYC 7763 SKU. This means that each of your cores gets 8MB of L3 cache, but a single active core can access all 32MB of cache in that CCX.

Do You Want an AMD EPYC 7003 Series Processor for SQL Server?
AMD EPYC 75F3 Layout

A one-socket server with this CPU will make an excellent dedicated SQL Server VM host. With 32 physical cores, you will only need one VMware license rather than two. You will have 64 logical cores, which is enough for several decent sized VMs for SQL Server.

This CPU has a tray price of $4,860.00 That may seem a little expensive, but keep in mind that SQL Server 2019 Enterprise Core licenses are $6,874.00 each, and they are sold in two-packs, with a minimum of four cores per physical CPU.

AMD EPYC 74F3

Next is the AMD EPYC 74F3. It has 24C/48T with a base clock of 3.20 GHz and a boost clock of up to 4.00 GHz. You have a 256MB L3 cache and a default TDP of 240 watts. With that power budget, more of your cores will be spending more time closer to 4.00 GHz.

The 24 physical core mark is also very significant for SQL Server 2019 Standard Edition. SQL Server Standard Edition has a license limit of 24 physical cores, so this is the highest core count processor you would want for a bare metal instance of Standard Edition.

This CPU has a tray price of $2,900.00, but that cost is quite small compared to your SQL Server licensing cost. Picking a less expensive 24C SKU to save a small amount of money is not a good idea for SQL Server.

AMD EPYC 73F3

Next down the stack is the AMD EPYC 73F3. It has 16C/32T with a base clock of 3.50 GHz and a boost clock of up to 4.00 GHz. You still have a 256MB L3 cache and a default TDP of 240 watts. With that power budget, more of your cores will be spending even more time closer to 4.00 GHz. I think many bare metal SQL Server instances will be using this SKU.

AMD EPYC 72F2

Finally, we have the AMD EPYC 72F3. It has 8C/16T with a base clock of 3.70 GHz and a boost clock of up to 4.10 GHz. You still have a huge 256MB L3 cache and a default TDP of 180 watts. You also get a cTDP of 200 watts. With that power budget, and only eight cores, this will be a beast! You will probably see most of your cores spending most of the time running at nearly 4.10 GHz. This will be the go-to SKU if you want the absolute best ST CPU performance.

Do You Want an AMD EPYC 7003 Series Processor for SQL Server?
AMD EPYC 72F3 Layout

Do You Want an AMD EPYC 7003 Series Processor for SQL Server?

The short answer is yes. AMD EPYC 7003 Milan is significantly faster than AMD EPYC 7002 Rome. Whether it is a virtualization host or a bare metal SQL Server instance, you have five excellent CPU choices for SQL Server. You have the option of replacing two-socket Intel servers with one-socket AMD servers. You can also replace four-socket Intel servers with two-socket AMD servers, although I think that will be less common.

What About Intel Xeon?

Maybe your organization has never used anything but Intel Xeon processors in your database servers. Perhaps you remember the absolutely miserable performance of AMD Opteron server processors from ten years ago. Well, things are different now.

The previous generation “F” SKU AMD EPYC 7002 “Rome” server processors achieved near parity with Intel’s current Cascade Lake-SP for single-threaded CPU performance. With the new AMD EPYC 7003 “F” SKUs, AMD has the lead for single-threaded CPU performance. This is true for all five SKUs that I have described in this post.

Here is a head-to-head shootout between the “best” AMD and Intel processors for SQL Server usage at each respective core count. In each case we are pitting a one-socket AMD server against a two-socket Intel server.

These estimated TPC-E scores are based on my proprietary calculations. The “Estimated TPC-E” column is the raw TPC-E score, which represents the total CPU capacity of the server with an OLTP workload. Finally, the “Estimated Score/Core” represents the single-threaded CPU performance of that processor. In both cases, higher is better!

One AMD EPYC 7763 vs. Two Intel Xeon Gold 6258R

This compares the two flagship processors from AMD and Intel. Since Intel’s current line of “real” Xeon processors tops out at 28 cores, it is a little unfair to Intel. I don’t consider the Intel Xeon 92xx line to be serious, real SKUs that anyone is buying. The Intel Xeon Gold 6258R is functionally equivalent to the much more expensive Intel Xeon Platinum 8280.

The AMD EPYC 7763 is slightly faster than the Intel Xeon Gold 6258R for single-threaded CPU performance.

One AMD EPYC 75F3 vs. Two Intel Xeon Gold 6246R

Moving down to a system with 32 physical cores, the single-threaded CPU performance is basically equal. But keep in mind that we are comparing one 32C AMD processor to two 16C Intel processors. Generally speaking, lower core count processors run at higher clock speeds and have better single-threaded CPU performance.

If we compared the 32C/64T AMD EPYC 75F3 to the 28C/56T Intel Xeon Gold 6258R, one vs. one, the Intel processor will lose badly. That same pattern repeats with each of the AMD “F” SKUs below.

One AMD EPYC 74F3 vs. Two Intel Xeon Gold 6256

In a system with 24 physical cores, AMD once again has a slight lead for single-threaded CPU performance. If we compared the 24C/48T AMD EPYC 74F3 to the 24C/48T Intel Xeon Gold 6248R, one vs. one, the Intel processor will once again lose pretty badly.

One AMD EPYC 73F2 vs. Two Intel Xeon Gold 6250

The pattern continues with a 16 core system. AMD has a slight lead across these two processors. Once again, if we were to compare the 16C/32T AMD EPYC 73F3 to the 16C/32T Intel Xeon Gold 6246R, the Intel processor would lose quite badly.

One AMD EPYC 72F3 vs. Two Intel Xeon Gold 5222

Finally, at the bottom of the stack with an 8 core system, AMD opens up a larger lead vs. Intel. If we were to compare the 8C/16T AMD EPYC 72F3 to the 8C/16T Intel Xeon Gold 6250, Intel would also lose quite badly.

Additional Content

I have several other blog posts that you might find interesting.

Final Words

There is a lot of excitement and support in the server ecosystem for the AMD EPYC 7003 Series processors. Many server vendors have announced multiple new server models for different high-end server workload types. This shows how serious they are about AMD EPYC 7003.

If you have any questions about this post, please ask me here in the comments or on Twitter. I am pretty active on Twitter as GlennAlanBerryThanks for reading!

5 thoughts on “Do You Want an AMD EPYC 7003 Series Processor for SQL Server?

  1. Hi Glenn, discussing with other SQL people, the L1,2, 3 cache is as important, if not more than the clock speed itself. The news AMDs favors huge L3 cache size, which might be one of the main reason why they perform better, don’t you think?

    1. There is a lot more to it than just the clock speed or cache size. How well the underlying achitecture performs is also very important. Having a very large L3 cache is useful for relational databases, but it is not the only consideration.

  2. Do you have any estimates comparing EPYC Milan to Xeon Ice Lake?

    1. Well, in the context of SQL Server, I normally like to use actual TPC-E scores as a starting point to get the performance of the flagship SKU in a processor family. Then I do some calculations to get the relative performance of other SKUs in that family. Once I have these calculations done, I can compare the relative performance of a particular SKU from one family or manufacturer to another.

      Unfortunately, none of the server vendors have bothered to submit any TPC-E scores for Intel Ice Lake-SP systems. I take this as a bad sign. If Ice Lake-SP performance on TPC-E was good, someone like Lenovo would have submitted a score.

      I am working on a new blog post about this, prompted by your question. Thanks!

Leave a Reply

%d bloggers like this: