AWS Burstable Performance Instances

Abdul Gaffoor. Noor Basha
5 min readJan 31, 2023

--

Many general-purpose workloads are on average not busy and do not require a high level of sustained CPU performance. The following graph illustrates the CPU utilization for many common workloads that customers run in the AWS Cloud today.

These low-to-moderate CPU utilization workloads lead to wastage of CPU cycles and, as a result, you pay for more than you use. To overcome this, you can leverage the low-cost burstable general-purpose instances, which are the T instances. Official Doc

Burstable performance instances in AWS refer to EC2 instances (e.g. t2, t3) that provide a baseline level of CPU performance and the ability to burst to higher performance as required by your workload. They are designed for workloads that don’t require sustained high CPU performance. The instances are a cost-effective option for applications with varying CPU usage patterns that don’t require a fixed number of CPU performances.

Baseline

The baseline in the context of Burstable Performance Instances in AWS refers to a baseline level of CPU performance that the instance provides. This baseline is a guaranteed amount of CPU performance that the instance will always be able to deliver, even if it’s under heavy utilization. The instance can also burst to higher levels of performance beyond the baseline, when the workload demands it, by using available CPU credits. These CPU credits are accumulated over time, based on the instance’s unused CPU capacity, and are used to provide temporary bursts of additional CPU performance when needed.

Does baseline CPU performance charge an extra bill

The baseline CPU performance of Burstable Performance Instances in AWS is included in the hourly cost of the instance and does not result in additional charges. However, if you burst beyond the baseline performance level, you will use up CPU credits, which may result in additional charges, depending on the instance type and your workload. When the instance uses up all its CPU credits, its performance will be limited to the baseline level until more CPU credits are accumulated. So, if your workload consistently requires performance above the baseline, you may incur additional charges for the extra CPU usage. It’s important to monitor your instances’ CPU utilization and credit balance to avoid unexpected costs.

How to monitor your instances’ CPU utilization and credit balance to avoid unexpected costs?

To monitor your instances’ CPU utilization and credit balance and avoid unexpected costs, you can use the following tools in AWS:

  1. CloudWatch: You can use Amazon CloudWatch to monitor the CPU utilization and credit balance of your Burstable Performance Instances in real-time and set alarms to alert you when utilization or credits reach a certain threshold.
  2. EC2 Console: You can access the EC2 Console in the AWS Management Console to view the CPU utilization and credit balance of your instances. You can also configure the console to display this information on the instance’s monitoring tab.
  3. EC2 API: You can use the EC2 API to retrieve performance metrics and credit information programmatically, which you can then use to monitor your instances and take automated actions, such as scaling instances up or down.
  4. AWS CLI: You can use the AWS Command Line Interface (AWS CLI) to retrieve performance metrics and credit information and monitor your instances from the command line.

By monitoring the CPU utilization and credit balance of your instances, you can ensure that your instances have sufficient credits to handle burst workloads and avoid unexpected costs due to additional usage.

What if my Instance CPU credits value is 0?

If your instance’s CPU credit balance is 0, it means that your burstable performance instance has exhausted its CPU credits and is now operating at its baseline performance level. This means that if your instance needs to handle a burst of CPU-intensive workloads, it may not be able to sustain its performance levels, resulting in slower performance and increased latency.

In such a scenario, you have a few options:

  1. Increase the size of the instance: By increasing the size of the instance, you can increase its baseline performance level and reduce the frequency of CPU credit exhaustion.
  2. Monitor and manage workloads: Regularly monitor the CPU utilization of your instances and manage workloads accordingly to reduce CPU utilization during non-peak hours.
  3. Purchase additional CPU credits: You can purchase additional CPU credits to temporarily increase the amount of CPU burst performance available to your instances.
  4. Switch to a different instance type: If your instance is consistently unable to handle its workloads, consider switching to a different instance type with higher baseline performance and CPU credit balance.

By taking these steps, you can ensure that your instances have sufficient CPU credits to handle burst workloads and avoid any performance degradation or increased costs due to additional usage.

What servies in AWS EC2 comes under Burstable performance instances?

In AWS EC2, the following instance types come under the burstable performance category:

  1. T2 instances: T2 instances are ideal for small, medium, and large-sized applications that have moderate CPU usage patterns.
  2. T3 instances: T3 instances are the next-generation burstable performance instances that provide a balance of compute, memory, and network resources.
  3. T3a instances: T3a instances are the burstable performance instances that provide a low-cost, general-purpose option for applications that have a moderate amount of CPU requirements.
  4. T4g instances: T4g instances are burstable performance instances that are optimized for GPU workloads and deliver a GPU-accelerated experience for compute-intensive applications.

These instances provide a baseline level of CPU performance, and when additional CPU capacity is required, the instances can burst above their baseline level by using CPU credits. The cost of burstable performance instances depends on the rate at which CPU credits are earned and used, and the size of the instance

AWS charged for 1,110.553 vCPU-Hours as Amazon Elastic Compute Cloud T3CPUCredits, what does this mean?

The charge of 1,110.553 vCPU-Hours for Amazon Elastic Compute Cloud T3CPUCredits means that you have used 1,110.553 hours of burstable performance CPU time on a T3 instance.

In AWS, T3 instances come under the burstable performance category, which means that they have a baseline level of CPU performance and can burst above their baseline level when additional CPU capacity is required. When a T3 instance bursts above its baseline level, it consumes CPU credits.

Each vCPU-Hour of burstable performance CPU usage is charged as a T3CPUCredit. The number of vCPU-Hours charged for a T3 instance depends on the size of the instance, the rate at which CPU credits are earned and used, and the frequency and duration of burst workloads.

If you regularly see a high charge for T3CPUCredits, it may indicate that your T3 instance is frequently bursting above its baseline performance level and consuming CPU credits. To avoid unexpected costs, it is recommended to regularly monitor the CPU utilization and credit balance of the instance and adjust the instance size or manage workloads accordingly.

I have created one blog on how to Monitor your instances’ CPU utilization and credit balance using AWS CLI

--

--

Abdul Gaffoor. Noor Basha
Abdul Gaffoor. Noor Basha

Written by Abdul Gaffoor. Noor Basha

DevOps Engineer || AWS Cloud Admin || Cloud-native Practioner

No responses yet