What are the differences between General Purpose and Max I/O performance modes in Amazon EFS?

Last updated: 2019-11-11

Amazon Elastic File System (Amazon EFS) has two performance modes, General Purpose and Max I/O. What are the differences between the two performance modes and how do I determine which mode to use?

Short Description

The performance modes differ in the following aspects:

  • Number of file system operations per second.
    General Purpose performance mode is limited to 7,000 file system operations per second. This limit is sufficient for most general use cases.
    Max I/O performance mode doesn't have a file system operations limit. Use the Max I/O performance mode if you have a very high requirement of file system operations per second.
  • Latency per file system operation.
    General Purpose performance mode has the lower latency of the two performance modes and is suitable if your workload is sensitive to latency. Max I/O performance mode offers a higher number of file system operations per second but has a slightly higher latency per each file system operation.

For more information, including additional use cases, see Amazon EFS Performance - Performance Modes.

Note: The file system performance mode can't be changed after the file system is created. There are no additional costs for either performance mode, and each mode is billed the same way.

Resolution

To determine which performance mode to use, create a file system using General Purpose mode. Then, run a performance test for a period of time. Monitor the file system operations to determine how close your file system is to reaching 100% of the I/O limit. If you're close to the maximum for a long time, consider using the Max I/O mode. If you decide to migrate your data to a file system using a different performance mode, use DataSync to transfer your files to a different Amazon EFS file system.

Create a file system with General Purpose performance mode

Note: If you don't specify a performance mode while creating the file system, General Purpose is chosen by default.

  1. Go to your Amazon EFS console.
  2. Select Create file system.
  3. In the Configure file system access section, select your VPC, Availability Zones, subnets, and security group settings for your file system.
  4. After making your selections, choose Next Step.
  5. Under Choose performance mode, select General Purpose. You can also add tags, configure a Lifecycle policy, select a throughput mode, and enable encryption.
  6. Select Next Step.
  7. Review the summary of your configuration settings, and then select Create File System.

Monitor the maximum file system operations using Amazon CloudWatch metrics

The PercentIOLimit CloudWatch metric monitors how close a file system is to hitting its maximum file system operations per second limit. This metric is available only for file systems running with General Purpose performance mode. A General Purpose performance mode file system hits 100% PercentIOLimit when it reaches the 7,000 file system operations per second limit.

To check the PercentIOLimit:

  1. Open the CloudWatch console.
  2. Select Metrics.
  3. In the search bar, enter your file system ID, and then press ENTER. The relevant metrics for that file system appear.
  4. Select EFS, and then choose File System Metrics.
  5. Select PercentIOLimit. The PercentIOLimit metric displays your file system operations per second usage. 7,000 file system operations equal a PercentIOLimit of 100%.

Did this article help you?

Anything we could improve?


Need more help?