I tried launching an M9g (Graviton5) instance that became GA on Amazon RDS for MySQL and checked the system information

I tried launching an M9g (Graviton5) instance that became GA on Amazon RDS for MySQL and checked the system information

Following EC2, RDS for MySQL has also reached GA for Graviton5-based M9g instances. This summarizes the results of launching a db.m9g.large in us-west-2 and checking system information using SHOW VARIABLES and similar commands.
2026.06.18

This page has been translated by machine translation. View original

Introduction

On 2026/6/17, Graviton5-based M9g instances became generally available (GA) for Amazon RDS for PostgreSQL, MySQL, and MariaDB.

https://aws.amazon.com/jp/about-aws/whats-new/2026/06/amazon-rds-postgresql-mysql-mariadb-m9g-instances/

M9g instances became GA on EC2 on 2026/6/10, and an article confirming CPU information has been published.

https://dev.classmethod.jp/articles/ec2-m9g-graviton5-instance-launch/

This time, I launched an M9g instance on RDS MySQL and checked system information using SHOW VARIABLES and similar commands.

According to the official announcement, M9g is expected to deliver up to 30% performance improvement and up to 23% better price-performance ratio compared to Graviton4-based instances. The regions available at the time of the official announcement are four regions: us-east-1, us-east-2, us-west-2, and eu-central-1.

Supported Engine Versions

When I checked the support status of db.m9g.large in us-west-2 using the AWS CLI's describe-orderable-db-instance-options, the available MySQL engine versions were as follows.

Series Supported Versions
MySQL 8.0.x 8.0.42, 8.0.43, 8.0.44, 8.0.45, 8.0.46
MySQL 8.4.x 8.4.5, 8.4.6, 8.4.7, 8.4.8, 8.4.9

Supported Instance Sizes

db.m9g.medium does not exist. I confirmed that specifying db.m9g.medium in describe-orderable-db-instance-options returns an empty result. db.m9g.large is the minimum size.

$ aws rds describe-orderable-db-instance-options \
    --engine mysql \
    --db-instance-class db.m9g.medium \
    --query "OrderableDBInstanceOptions[].EngineVersion" \
    --region us-west-2
[]

This is in contrast to EC2, where m9g.medium is available.

Price Comparison with M8g

This is a comparison for us-west-2 / MySQL / Single-AZ / On-Demand (retrieved from AWS Pricing API on 2026-06-17).

db.m8g.large (Graviton4) db.m9g.large (Graviton5)
vCPU / Memory 2 / 8 GiB 2 / 8 GiB
Network Up to 12.5 Gbps Up to 15 Gbps
Price (per hour) $0.168 $0.183
Difference +8.9%

M9g is approximately 9% more expensive than M8g.

Launching the Instance

I launched with db.m9g.large / MySQL 8.4.9 / gp3.

aws rds create-db-instance \
    --db-instance-identifier m9g-mysql-test \
    --db-instance-class db.m9g.large \
    --engine mysql \
    --engine-version 8.4.9 \
    --master-username admin \
    --master-user-password '<password>' \
    --allocated-storage 20 \
    --storage-type gp3 \
    --no-multi-az \
    --no-deletion-protection \
    --publicly-accessible \
    --vpc-security-group-ids sg-xxxxxxxx \
    --db-subnet-group-name default-vpc-4az \
    --backup-retention-period 0 \
    --region us-west-2

The following are the key parameters confirmed with describe-db-instances after launch.

Item Value
DBInstanceClass db.m9g.large
Engine mysql
EngineVersion 8.4.9
StorageType gp3
AllocatedStorage 20 GB
Iops 3000
StorageThroughput 125 MB/s
MultiAZ false
CACertificateIdentifier rds-ca-rsa2048-g1

Checking System Information

Version Information

mysql> SELECT @@version, @@version_comment, @@version_compile_os, @@version_compile_machine;
+-----------+---------------------+----------------------+---------------------------+
| @@version | @@version_comment   | @@version_compile_os | @@version_compile_machine |
+-----------+---------------------+----------------------+---------------------------+
| 8.4.9     | Source distribution | Linux                | aarch64                   |
+-----------+---------------------+----------------------+---------------------------+

The fact that version_compile_machine is aarch64 confirms that it is running on ARM (Graviton). While on EC2 you can directly check CPU information using lscpu or dmidecode, RDS does not allow access to the OS layer, so this MySQL system variable is the primary means of confirming the architecture.

STATUS Command

mysql> STATUS;
--------------
mysql  Ver 8.4.9 for Linux on aarch64 (Source distribution)

Connection id:          29
Current user:           admin@flh2-133-201-48-65.tky.mesh.ad.jp
SSL:                    Cipher in use is TLS_AES_128_GCM_SHA256
Server version:         8.4.9 Source distribution
Protocol version:       10
Connection:             m9g-mysql-test.c5tznfzka3vu.us-west-2.rds.amazonaws.com via TCP/IP
Server characterset:    utf8mb4
Db     characterset:    utf8mb4
Client characterset:    utf8mb4
Conn.  characterset:    utf8mb4
TCP port:               3306
Uptime:                 5 min 24 sec
--------------

Note that mysql Ver 8.4.9 for Linux on aarch64 at the top is information from the mysql client side. For confirming the server-side architecture, refer to the @@version_compile_machine mentioned above. You can also confirm that the SSL connection is established with TLS 1.3 (TLS_AES_128_GCM_SHA256).

Key SHOW VARIABLES Results

Since the instance was launched with the default parameter group, you can check the key values in the default RDS for MySQL configuration.

Variable Name Value Notes
innodb_buffer_pool_size 5,637,144,576 (approx. 5.25 GB) Approximately 65% of 8 GB memory
innodb_buffer_pool_instances 1
innodb_dedicated_server ON Automatic tuning based on memory
innodb_doublewrite OFF OFF in this configuration
innodb_redo_log_capacity 1,073,741,824 (1 GB)
innodb_io_capacity 10000
innodb_io_capacity_max 20000
innodb_flush_method O_DIRECT
innodb_page_size 16384
innodb_adaptive_hash_index OFF
innodb_purge_threads 1
innodb_read_io_threads 4
innodb_write_io_threads 4
max_connections 628
table_open_cache 4000
thread_cache_size 14
character_set_server utf8mb4
collation_server utf8mb4_0900_ai_ci
tls_version TLSv1.2,TLSv1.3
authentication_policy caching_sha2_password
performance_schema OFF Disabled in default PG
log_bin OFF Disabled because backup-retention-period is 0
replica_parallel_workers 4
innodb_parallel_read_threads 4

Key Points

innodb_doublewrite = OFF

In this configuration of db.m9g.large / MySQL 8.4.9 / default parameter group, innodb_doublewrite was OFF.

performance_schema = OFF, log_bin = OFF

Both were OFF in this configuration. Since performance_schema is disabled in the default parameter group, a custom parameter group is required to enable it. Regarding log_bin, it is OFF because automatic backups are disabled by --backup-retention-period 0. Please enable automatic backups if you want to use binary logs.

Comparison with EC2 M9g

On EC2, you can directly check detailed CPU information for Graviton5 (clock frequency, cache size, core architecture, etc.) using lscpu, dmidecode, and similar tools. For details, please refer to the previous article.

Since RDS does not allow direct access to the OS layer, the CPU and architecture-related information that can be confirmed from a MySQL session is limited to system variables exposed by MySQL and similar sources. The primary means of confirming the architecture is version_compile_machine = aarch64. Distinguishing the processor generation, such as whether it is Graviton5 or Graviton4, is not possible from the MySQL side. The instance class name (db.m9g) serves as the identifier indicating the generation.

Summary

I launched an M9g instance based on Graviton5 on RDS for MySQL and confirmed the information available through MySQL system variables and similar methods. From version_compile_machine = aarch64, I was able to confirm that MySQL is running as an aarch64 binary.

The price was approximately 9% higher than M8g for the region and size confirmed this time. On the other hand, the official announcement states up to 30% performance improvement and up to 23% better price-performance ratio compared to Graviton4-based instances. While the actual effect depends on the workload, performance improvements over M8g can be expected for CPU-bound processing.

As of June 2026, it is not yet available in the Tokyo region, but once it becomes available there, I would like to try comparing it with existing M8g-series instances.

Share this article

AWSのお困り事はクラスメソッドへ