# The revised CPU sizing formula

A week ago, the Exchange team updated guidance on calculating the megacycles required for sizing or validating your Exchange configuration. They blogged about the change, which is also incorporated in Exchange 2010 Mailbox Role Calculator 12.3, here.

In summary, the formula has changed to include the megacycles value of the baseline system for dimensioning the CPU requirement, thus from:

((New platform per core value) * (Hertz per core of new platform)) / (Baseline per core value) = Adjusted Megacycles per Core

to:

((New platform per core value) * (Hertz per core of baseline platform)) / (Baseline per core value) = Adjusted Megacycles per Core

The baseline system is an HP DL380 G5 with 2 quad core x5470 3.33GHz (3,333 megacycles) with a Specint_rate2006 rating of 150 meaning 18.75/core. This change was needed to make a better estimate of the requirements and to accommodate for faster clocked CPU’s. The old formula could lead to over or under dimensioning, depending on the megacycles of the new system compared to the baseline system. The EHLO blog mentioned not to “panic” when you used the old formula since your systems simply will have some extra megacycle capacity. And while the trend nowadays is to have slower clocked CPU’s with more cores, you could run into some megacycle shortage when you used the old formula with a (perhaps re-used) 3,33 GHz+ CPU configuration and little margin. Unfortunately, the EHLO blog doesn’t mention that.

For example, let’s assume we’re going to use a Dell PowerEdge T610 with 2 hexa core Intel Xeon L5640 clocked at 2.26 GHz (2,260 megacycles) with a Specint_rate2006 of 283 (22 per core). In the old formula, the adjusted megacycles per core value would be 22 * 2,260 / 18.75 = 2,652. Using the revised formula the result is 22 * 3,333 / 18.75 = 3,911. The difference of 1,259 not only means a 50% increase in the adjusted megacycles per core value, but the total of 12 * 1,259 = 15,108 also means room for hosting roughly 3,777 additional active mailboxes (200 message profile meaning 4 megacycles/mailbox). Having over dimensioned like this isn’t problematic, it might get when using CPU’s clocked over 3,33 GHz. Suppose you used the T610 with a 2 quad core 3.46 GHz Xeon x5677 configuration with a Specint_rate2006 of 299 (37.375/core). The old formula would say 37.375 * 3,460 / 18.75 = 6,896.93; the revised formula results in 37.375 * 3,333 / 18.75 = 6,643.78. For 8 cores this means you’re a total of 2,025.2 megacycles “short” or about 500 mailboxes with a 200 message profile.

Now, using the Specint_rate2006 is not only nice for comparing different CPU configurations, e.g. what are the implications of using more processors with less cores versus less processors with more cores, but also to compare the hardware configurations of different vendors. For example, while an HP ProLiant BL480c with a single quad core 3.33 GHz Intel Xeon X5470’s gives you a  baseline per core value of 20.28, adding an additional CPU to the same configuration drops the value to 18.75. In addition, while this dual quad core 3.33 GHz X5470 configuration in an HP ProLiant BL480c gives you 18.75 per core, the same CPU configuration in an Fujitsu Siemens Celcius R650 gives a baseline per core value of 17.5. That difference of almost 7% might not seem much, but it might mean having sufficient room for overhead or not having to add a bigger or second CPU.

Of course, all the information above is from a CPU perspective and doesn’t take into account other dimensioning elements like memory or storage. Note that since in the revised formula contains two fixed numbers, you could also multiply the Specint_rate2006 by 177.76 to get the adjusted megacycles per core value.

This entry was posted in Exchange 2010 and tagged , , by Michel de Rooij. Bookmark the permalink.