06 / 08

Discuss EFS performance settings.

EFS performance is configured through two settings: Performance Mode (General Purpose or Max I/O) which controls latency and IOPS characteristics, and Throughput Mode (Elastic, Provisioned, or Bursting) which controls the available read/write bandwidth. The right combination depends on whether your workload is latency-sensitive, throughput-intensive, or bursty.

EFS performance is determined by two independent configuration axes: Performance Mode (which governs per-operation latency and maximum IOPS) and Throughput Mode (which governs how much data can be read or written per second). These two settings address different bottlenecks in file system performance, and choosing the right combination is key to building a cost-effective, high-performance shared storage layer.

Performance Mode — General Purpose (Default, Recommended)
  1. 1

    Lowest per-operation latency — sub-millisecond latency for file metadata operations (open, close, stat, listdir)

  2. 2

    Maximum IOPS: up to 35,000 IOPS for the file system

  3. 3

    Best for: latency-sensitive workloads — web servers, CMS, development environments, home directories, containerized apps

  4. 4

    Can be combined with any throughput mode

  5. 5

    AWS recommends General Purpose for ALL new workloads, even large-scale ones, when combined with Elastic Throughput

Performance Mode — Max I/O (Legacy)
  1. 1

    Optimized for maximum aggregate throughput and IOPS across a large number of concurrent clients

  2. 2

    Trade-off: higher per-operation latency compared to General Purpose (tens of milliseconds for metadata)

  3. 3

    Best for: highly parallelized big data workloads — genomics pipelines, media rendering farms, large Hadoop clusters with hundreds of nodes

  4. 4

    Cannot be used with Elastic Throughput mode

  5. 5

    AWS recommends using General Purpose + Elastic Throughput instead of Max I/O for new file systems

Throughput Mode — Elastic (Default, Recommended)
  1. 1

    Throughput automatically scales up and down based on actual workload demand — no configuration required

  2. 2

    Maximum read throughput: up to 3 GiB/s

  3. 3

    Maximum write throughput: up to 1 GiB/s

  4. 4

    Billing: pay per GB of data transferred (read: $0.03/GB, write: $0.06/GB) — no baseline charge

  5. 5

    Best for: spiky, unpredictable, or bursty workloads that are idle most of the time and occasionally need high throughput

  6. 6

    Cannot be used with Max I/O performance mode

Throughput Mode — Provisioned
  1. 1

    You manually specify a fixed throughput level in MiB/s, independent of the amount of data stored

  2. 2

    Range: 1 MiB/s to 3,414 MiB/s (3+ GiB/s)

  3. 3

    Billing: charged for the provisioned MiB/s amount regardless of actual usage

  4. 4

    Best for: workloads with consistently high throughput requirements that exceed what Elastic mode provides at your current storage size

  5. 5

    Example: a 1 TB file system using Bursting would only get ~50 MiB/s baseline. If you need 500 MiB/s consistently, use Provisioned.

  6. 6

    Can be changed to Elastic mode at any time

Throughput Mode — Bursting (Legacy)
  1. 1

    Throughput scales proportionally with the amount of data stored in the Standard storage class

  2. 2

    Baseline throughput: 50 MiB/s per TiB stored in Standard class

  3. 3

    Burst capability: up to 100 MiB/s per TiB stored (minimum 100 MiB/s guaranteed)

  4. 4

    Burst credits: accumulate when throughput is below baseline, consumed when bursting above baseline

  5. 5

    Problem: small file systems (under 1 TiB) get very low baseline throughput (as low as 50 MiB/s)

  6. 6

    Not recommended for new workloads — use Elastic or Provisioned instead

Monitoring and Tuning EFS Performance via CloudWatch