In yesterday’s post , I made a note that one of my wishlist items was to dig deeper and check individual CPU utilization on both the FA directors and DA directors. Well it looks like Christmas came a little early this year.
Let’s first take a look at the FA CPU utilization, on a per CPU basis. I’ve slimmed down the graph to focus on the four (4) CPUs that we were actually using. The others were idle and extraneous.
Figure 1: FA CPU utilization, per CPU
As you’ll see in figure 1, each individual FA CPU that we were using was at no more than 20% utilized. If you recall, this utilization metric was driven by 18k IOPS at 8k block sizes. So if we want to do some fuzzy math, and assume 50% utilization is ok, we could presumably do roughly 50k IOPS across four FA CPUs, assuming that the disks and cache can service the I/O requests.
Let’s do some more fuzzy math and spread across the rest of the FA CPUs (16 total), so if 4 CPUs yields 50k IOPS, then 16 CPUs could presumably yield 200k IOPS, again assuming that the disks and cache can service the I/O requests. I know it won’t scale linearly all that way up to 100%, but up to 50% utilization, I wouldn’t think that queueing should have a significant impact quite yet.
Figure 2: FA board utilization, per board
Looking at figure 2, you’ll see that each FA director is at only 5% utilization. From this vantage point, with 18k utilizing 5% we could maybe get 180k at 50% utilization, again assuming that the disks and cache can service the I/O requests.
Figure 3: DA CPU utilization, per CPU
And as I postulated in yesterday’s post, I figured that all disk I/O was being spread evenly across al DA CPUs. Here you’ll see that all CPUs are at about 8% utilization across the board.
Figure 4: DA board utilization, per board
And finally, you see that each DA board is at no more than 5% utilization on the backend. Not bad at all.
As I said in the previous post, I think it would be very interesting to try to max out the DMX and see what the numbers look like at that point. I don’t think even 6-8 servers would do it. I’d love to throw 20 servers at it, hammer it, and take another peek inside, but I’ll take what I can get.
Disclaimer: Here’s my fine print. I did some fuzzy math in this post just for illustrative purposes. By no means are these officially published numbers, sanctioned or approved by EMC. These numbers are not meant to be used to support white papers, documentation, or technical justification to end-users.