- Documentation
Elastic Compute Service
Elastic Compute Service
Best Practices
Performance test
Baseline performance test for ECS instances
Performance test
Baseline performance test for ECS instances
Baseline performance test for ECS instances
This topic describes how to use tools to test the performance of the ECS instance CPU, memory, network, and volume. This allows you to learn the ECS instance performance based on the data from test results.
Test principles
For the smooth operation of your business, you need to comprehensively test the performance of your ECS instance that hosts the services. Make sure that you follow the principles below during performance tests:
- Objective: Clearly specify the specifications of the ECS instances to be tested (of CPU cores, CPU frequency, memory, storage, network bandwidth, operating system, and other components) and testing methods (such as deployment plans, instance numbers, and service load). This helps generate a fair and objective test result.
- Reasonable: Run the tests based on your needs and actual scenarios.
- Accurate: Select mature, stable, and authoritative testing tools and test cases. This allows the test results to reflect the ECS instance performance accurately.
Testing tools and key metrics
Test environment
Prepare the environment
tip
The test environment and methods provided in this topic are for reference only and do not represent the actual optimal performance of the instance.
Software version
ECS Instance operating system: In the example provided in this topic, CentOS 8.3 is used.
CPU single-core/multi-core performance testing via UnixBench
Calculation duration testing via SuperPI
CPU load testing via Sysbench
Test description
UnixBench is an open-source tool for testing the basic performance of UNIX systems. It is also commonly used for testing ECS instance performance. You can run various tests via UnixBench to assess system performance from different aspects. Each test result is compared against a baseline value to generate an index score. Then, the index scores of all test items are combined to generate an overall test score.
Procedure
- Execute the following commands to download and install UnixBench.
- Execute the following command to run the single-core test.
- The execution process may take longer, so please wait patiently. The test score will be displayed as shown in the following picture. Refer to the values of "INDEX" for the result. The higher the values, the better the performance.
-
- Execute the following commands to run the multi-core test.
- The execution process may take longer, so please wait patiently. The test score will be displayed as shown in the following picture. Refer to the values of "INDEX" for the result. The higher the values, the better the performance.
-
Test description
SuperPI is a computer program for calculating pi (π). It can achieve a maximum precision of 32,000,000 digits after the decimal point. It is a fast baseline test and is often used for overclocking or comparing configurations between different CPUs and hardware.
Procedure
Execute the following commands to install SuperPI and start testing.
If prompted that Git is not installed, execute the following commands to install Git.
After the above commands are executed, the calculation time will be displayed as shown in the picture below. The smaller the value, the shorter the time and the stronger the computing power.
Test bandwidth via Stream
Test latency via MLC
Test Memory load via Sysbench
Test description
Stream is an industry-recognized tool for testing memory performance comprehensively. Supported operations include Copy, Scale, Add, and Triad.
Procedure
- Execute the following commands to download and install Stream.
- gcc -O -fopenmp -mcmodel=medium -DSTREAM_ARRAY_SIZE=200000000 -DNTIMES=100 stream.c -o stream_omp_exe
- Execute the following commands to run the bandwidth test.
- After execution, the final result score will be displayed as shown below. Refer to the values of "Best Rate MB/s". The higher the values, the better the performance.
-
Test description
MLC (Memory Latency Checker) is a memory testing tool developed by Intel. It can effectively and conveniently test memory latency and bandwidth. The tool also supports a series of fine-grained tests for specific processor cores, caches, and memory. Procedure
- Execute the following commands to download and install MLC.
-
- Execute the following commands to run the latency test.
- After the above commands are executed, a matrix of local and cross-socket memory latencies will be displayed. The lower the values, the lower the latency.
-
Test network performance
Last updated: 2026.06.24 17:17:26