---
title: "With Compute Optimizer, AWS Finds an Actual Use For AI/ML"
id: "6588"
type: "post"
slug: "with-compute-optimizer-aws-finds-an-actual-use-for-ai-ml"
published_at: "2019-12-03T18:53:32+00:00"
modified_at: "2022-02-03T20:13:45+00:00"
url: "https://www.lastweekinaws.com/blog/with-compute-optimizer-aws-finds-an-actual-use-for-ai-ml/"
markdown_url: "https://www.lastweekinaws.com/blog/with-compute-optimizer-aws-finds-an-actual-use-for-ai-ml.md"
excerpt: "AWS has granted my wish and turned its AI/ML focus toward the most intractable of problems: the AWS bill."
taxonomy_category:
  - "Uncategorized"
---

I’ve periodically remarked that AWS has so many EC2 instance families that they’ve declared war on the English alphabet.

Today, they’ve announced a new feature that shows they’re committed to winning that war.

I mean, think about it: With as many instance families as AWS has to offer, how do you know you’re on the right instance size and family for your workloads? You almost certainly won’t, but AWS would like you to buy a three-year RI for it anyways. Since [Savings Plans](https://www.lastweekinaws.com/blog/aws-begins-sunsetting-ris-replaces-them-with-something-much-much-better/)
 don’t care which EC2 instances you use, switching instance families is a lot more practical for an awful lot of environments.

First, let’s give a bit of background here. I’ve said previously that as a global panacea, [right sizing your instances is nonsense](https://www.lastweekinaws.com/blog/right-sizing-your-instances-is-nonsense/)
 because many application workloads can’t sustain the disruption, and thus in those situations, an awful lot of manual work is required.

I stand by that assessment. But it’s good to know what instances your workloads *should* be running on. With roughly 200 options in a single region, it’s a safe bet you got it wrong.

I’ve been bearish on AI/ML for a long time. “These things are the future!” AWS proclaimed.

My counterpoint: If that’s so, how about demonstrating it on the bounded problem space of your own bills?

Today, they released something that shuts me right up on that score.

## Introducing Compute Optimizer

Compute Optimizer, which you can access via the AWS Console, analyzes your workloads and spits out the recommended instances your workloads should be running on. Yes, really, it is that simple—and something we should have had years ago.

At the time of this writing, Compute Optimizer supports M, C, R, T, and X families, and their AMD variants where applicable—which means that if this sees widespread adoption, I predict that Intel’s AWS market share is going to take a plunge.

Curiously, it doesn’t currently support the GPU-based instances, the so-inexpensive-they-might-be-stolen “I” family, and the custom ARM “A” families—along with a host of miscellaneous, esoteric instance types I could name, but frankly, I might just be making them up given how little I see them in the wild. That said, this new tool does cover the lion’s share of worldwide EC2 instance usage by my math.

Once enabled, Compute Optimizer presumably performs an initial analysis. You’ll have to wait 12 hours before it starts making recommendations, which are based on your existing CloudWatch metrics.

But note that it needs at least 30 hours of metric data before it can make any recommendations. You’d do well to ensure that those 30 hours are representative: *Well, this is the baseline load for the past couple of days, let’s resize, ignoring entirely that our Super Bowl commercial airs tomorrow* is definitely a bad idea.

Note as well that this integrates with AWS Organizations, so you won’t have to run this separately in every linked account. (My god, could you imagine how much work that would be?!)

One other point to note: It works on Auto Scaling Groups when their membership consists of supported instance families, rather than just standalone EC2 instances. In short, “however you’re using EC2, you’re probably covered.”

## The Catch

There’s one catch, though: Only hypervisor metrics are taken into consideration by default, which excludes memory utilization.

If you want host-level metrics such as memory, you’ll need to go through the somewhat byzantine process of [installing the CloudWatch agent](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/QuickStartEC2Instance.html)
 on the nodes you want to analyze. If this step is skipped, the Compute Optimizer will not recommend instances with lower RAM than what you’re currently using.

## The Results

After the Compute Optimizer completes its analysis, it’ll give you up to three recommended courses of action and show you how each of the recommendations would have handled your workloads based on the historical usage data.

Is it a global solution that enables instance rightsizing for everyone? Far from it.  
But it’s better than what we’ve had to work with so far, it’s free, and it’s an indicator that AWS is finally starting to turn its AI/ML focus toward the most intractable of problems: the AWS bill.

by Corey Quinn Corey is the Chief Cloud Economist at Duckbill, where he specializes in helping companies improve their AWS bills by making them smaller and less horrifying. He also hosts the "Screaming in the Cloud" and "AWS Morning Brief" podcasts; and curates "Last Week in AWS," a weekly newsletter summarizing the latest in AWS news, blogs, and tools, sprinkled with snark and thoughtful analysis in roughly equal measure.

## More Posts from Corey

[Back to the Blog](https://www.lastweekinaws.com/blog/)

[https://www.lastweekinaws.com/blog/cloudwatch-omni-infinidash-review/](https://www.lastweekinaws.com/blog/cloudwatch-omni-infinidash-review/)

### [Infinidash: AWS’s New Observability Play Has Great Bones and a Terrible Bedside Manner](https://www.lastweekinaws.com/blog/cloudwatch-omni-infinidash-review/)

 [By Corey Quinn](https://www.lastweekinaws.com/blog/author/cquinn/)
 Infinidash: AWS’s New Observability Play Has Great Bones and a Terrible Bedside Manner AWS has just released something fascinating in the form of CloudWatch Omni. I want to be upfront before I dive further: “CloudWatch Omni” is a wretched name that I will not be using, so for the rest of this article and the […]

[Read More about Infinidash: AWS’s New Observability Play Has Great Bones and a Terrible Bedside Manner](https://www.lastweekinaws.com/blog/cloudwatch-omni-infinidash-review/)

[https://www.lastweekinaws.com/blog/reading-observability-tools-thats-a-robots-job/](https://www.lastweekinaws.com/blog/reading-observability-tools-thats-a-robots-job/)

### [Reading Observability Tools? That’s a Robot’s Job](https://www.lastweekinaws.com/blog/reading-observability-tools-thats-a-robots-job/)

 [By Corey Quinn](https://www.lastweekinaws.com/blog/author/cquinn/)
 Last Thursday Honeycomb was kind enough to hand me the closing keynote slot at O11yCon, a conference whose entire premise is that observability matters and the people in the room are the ones who would know. I used that slot to argue that the primary reader of your telemetry is no longer a human, and […]

[Read More about Reading Observability Tools? That’s a Robot’s Job](https://www.lastweekinaws.com/blog/reading-observability-tools-thats-a-robots-job/)

[https://www.lastweekinaws.com/blog/s3-is-not-a-filesystem-but-now-theres-one-in-front-of-it/](https://www.lastweekinaws.com/blog/s3-is-not-a-filesystem-but-now-theres-one-in-front-of-it/)

### [S3 Is Not a Filesystem (But Now There’s One In Front of It)](https://www.lastweekinaws.com/blog/s3-is-not-a-filesystem-but-now-theres-one-in-front-of-it/)

 [By Corey Quinn](https://www.lastweekinaws.com/blog/author/cquinn/)
 I’ve been saying “S3 is not a filesystem” for over a decade. I’ve said it on stages, in newsletters, on podcasts, and directly to the faces of large company employees who were too polite to tell me to shut up before they went back to their FUSE monstrosities. It was one of those reliable truths […]

[Read More about S3 Is Not a Filesystem (But Now There’s One In Front of It)](https://www.lastweekinaws.com/blog/s3-is-not-a-filesystem-but-now-theres-one-in-front-of-it/)

## Get the newsletter!

Stay up to date on the latest AWS news, opinions, and tools, all lovingly sprinkled with a bit of snark.

"*" indicates required fields
