Who is this for?

This is an advanced topic for software developers interested in learning how to improve the performance of their workloads on Arm servers.

What will you learn?

Upon completion of this Learning Path, you will be able to:

  • Build and install glibc with Large System Extensions (LSE) on an Arm server.
  • Benchmark workload performance using glibc with LSE optimizations.
  • Benchmark MongoDB using glibc with LSE optimizations.

Prerequisites

Before starting, you will need the following:

  • An Arm-based instance from a cloud service provider
  • Review the learning path on LSE

Summary

AI-assisted

This summary was drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
You’ll rebuild glibc with Arm LSE and evaluate the runtime with MongoDB. First, you’ll build MongoDB from source, run YCSB workloads with the LSE-enabled library, and repeat the benchmark with a NoLSE baseline. By comparing throughput and runtime, you can determine whether LSE-enabled atomics make a measurable difference for MongoDB workloads.

Frequently asked questions

AI-assisted

These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
How do I start MongoDB with the custom glibc?
First, copy libcrypt.so into the custom glibc build’s crypt directory. Then, launch mongod through testrun.sh with mongodb.conf and the WiredTiger cache setting.
Which MongoDB version should I build for the benchmark?
Use the repository tag r5.3.2.
Which YCSB workload should I run for the comparison?
Use a single YCSB workload profile and keep it identical across both LSE and NoLSE runs to compare results under consistent conditions.
What output should I capture from the NoLSE baseline to compare later?
Record the summary lines that include [OVERALL] RunTime(ms) and [OVERALL] Throughput(ops/sec). The example output also shows GC statistics that you can keep for reference.
What performance uplift does the example report for LSE?
The example reports about 3.14% uplift: throughput increases from 6,662.13 operations per second with No-LSE glibc to 6,871.61 operations per second with LSE glibc.
Next