Back
Products

Apache Doris on AWS Graviton5: Up to 78% Higher Query Performance

2026/10/29
Kevin Shen
Kevin Shen
Principal Product Manager at VeloDB

TL;DR: We ran 194 analytical queries on Apache Doris on Amazon EC2 M9g (AWS Graviton5) and M7i (4th Gen Intel Xeon). Graviton5 finished all five benchmark suites faster, from 18% on TPC-DS to 78% on ClickBench, and 191 of the 194 queries ran faster on their own. Scan-heavy queries gained the most.

AWS's Apache Doris case study reports that Doris on Graviton5 delivers up to 78% higher query performance than on x86, with the same Doris version and data scale. That 78% comes from ClickBench, one of five suites we ran. This post shows all five and explains where the gains come from. It's a companion to our talk, "Apache Doris on AWS Graviton5: Real-Time OLAP Price-Performance, Benchmarked."

What changed in Graviton5, and why does it matter for OLAP?

According to AWS, Graviton5 has up to 192 cores per chip, 5x the total L3 cache of Graviton4 (2.6x per core), a clock speed of 3.3 GHz (up from 2.8 GHz), and up to 33% lower core-to-core latency. AWS reports up to 30% higher performance for database workloads over Graviton4.

An analytical engine spends most of its time scanning columns, building hash tables for joins and GROUP BY, and passing data between parallel tasks. Each change maps to that work:

  • Cache: join and aggregation hash tables that fit in cache avoid slow trips to main memory.

  • Cores: Graviton maps every vCPU to a physical core, so Doris pipeline tasks don't share a core with a sibling thread.

  • Latency: parallel tasks exchange data and merge partial aggregates faster.

Doris has also optimized scanning, joins, aggregation, sorting and data exchange for Arm, including porting its vectorized code from x86 SSE and AVX to Arm NEON.

How did we test Apache Doris on Graviton5?

We ran the same Doris version and data scale on Amazon EC2 M9g (Graviton5) and M7i (4th Gen Intel Xeon Scalable, Sapphire Rapids). The 194 queries came from ClickBench (43), SSB (13), SSB Flat (13), TPC-H (22) and TPC-DS (103), with SSB, TPC-H and TPC-DS at scale factor 100. We recorded the hot-run time of every query and summed each suite.

Performance gain is x86 time divided by Graviton5 time, minus 1. It's the definition behind the 78% figure in AWS's case study, and the one our Graviton4 study used.

How much faster is Apache Doris on Graviton5?

Graviton5 finished every suite faster. ClickBench gained the most, at 78.3%, and TPC-DS the least, at 18.0%.

pic1.png

Figure 1. Query performance gain of Apache Doris on Graviton5 (M9g) over x86 (M7i), by suite, based on total hot-run time.

SuiteQueriesx86 M7i (s)Graviton5 M9g (s)Performance gainRuntime reduction
ClickBench438.494.7678.3%43.9%
SSB Flat SF100130.790.5251.2%33.9%
SSB SF100131.821.2842.3%29.7%
TPC-H SF100228.906.7332.2%24.4%
TPC-DS SF10010339.7133.6618.0%15.2%

The last two columns describe the same result from opposite directions. On ClickBench, Graviton5 is 78.3% faster, which means it needs 43.9% less time.

Do the gains hold query by query?

Yes. 191 of 194 queries ran faster on Graviton5, and the median query ran 1.48x faster. Two ClickBench queries tied at 1 ms. The largest single gain was ClickBench Q40, at 3.64x.

pic2.png

Figure 2. Every query's hot-run time on x86 (horizontal) and Graviton5 (vertical), log scale. Points below the dashed line ran faster on Graviton5.

One query ran slower: TPC-DS Q51 took 4,487 ms on Graviton5 and 1,002 ms on x86. Q51 computes cumulative sales with window functions and a full outer join. We kept it in the totals. Without it, TPC-DS would show a 32.7% gain instead of 18.0%.

Which workloads gain the most on Graviton5?

Scan-heavy suites gained the most, and join-heavy suites the least:

SuiteShape of the workPerformance gain
ClickBench1 wide table: filters, GROUP BY, string functions78.3%
SSB FlatSSB data pre-joined into one table51.2%
SSBStar schema: 1 fact table, 4 dimension tables42.3%
TPC-H8 tables, multi-way joins and subqueries32.2%
TPC-DS24 tables, complex joins and window functions18.0%

SSB Flat versus SSB is the cleanest comparison: same data, with the joins pre-computed. Removing the joins raised the gain from 42.3% to 51.2%. Customer-facing dashboards and log and event analytics on wide tables should see the largest gains.

How should you choose a Graviton5 instance for Doris?

  • M9g (general purpose) for mixed dashboards and ad hoc SQL. It's the family we benchmarked.

  • C9g (compute optimized) for scan- and aggregation-heavy workloads.

  • R9g (memory optimized) for large joins and high-cardinality aggregation.

The "d" variants (M9gd, C9gd, R9gd) add local NVMe SSD storage. Whichever you pick, test with your own queries at peak concurrency, keep the Doris version and data identical, and measure latency as well as throughput, as the AWS Graviton Performance Testing whitepaper recommends.

FAQ

How much faster is Apache Doris on AWS Graviton5 than on x86?

In our tests on M9g versus M7i, Doris completed the five suites 18% (TPC-DS) to 78% (ClickBench) faster. 191 of 194 queries ran faster, and the median query ran 1.48x faster.

Does "78% higher query performance" mean 78% less runtime?

They measure the same result two ways. On ClickBench, Graviton5 is 1.78x as fast, a 78.3% performance gain. Expressed as time saved, that's a 43.9% runtime reduction.

Which Doris workloads benefit most from Graviton5?

Scan- and aggregation-heavy queries on wide tables. ClickBench gained 78.3% and SSB Flat 51.2%, while join-heavy TPC-H and TPC-DS gained 32.2% and 18.0%.

Do I need a special build of Apache Doris for Graviton?

The standard Apache Doris ARM64 binaries from doris.apache.org run on Graviton. The Arm optimizations are in the mainline code.

How does Graviton5 compare with Graviton4 for Doris?

Our 2025 study found Doris on Graviton4 about 50% faster on average than on c6i x86 instances. It used an older x86 baseline, so the two studies can't be compared directly. AWS reports up to 30% higher database performance for Graviton5 over Graviton4.

Try Apache Doris on Graviton5

Graviton5 ran Doris faster on every suite we tested, with the largest gains on the scan-heavy analytics behind dashboards and event data. Download the Apache Doris ARM64 build from doris.apache.org, or run Doris as a managed service with VeloDB Cloud.

Related reading

Try VeloDB Cloud for Free

SaaS warehouse free trial 14 days,
BYOC warehouse free computing service fee 90 days.

Subscribe to Our Newsletter

Stay ahead on Apache Doris releases, product roadmap, and best practices for real-time analytics and AI-ready data infra.

Need help? Contact us!