The Elastic High Performance Computing (E-HPC) client provides a visualized interface to help you configure applications, such as High-Performance Linpack (HPL), iPerf, and Flexible I/O Tester (FIO). You can submit jobs and test the benchmark performance of an E-HPC cluster, including the floating-point operations per second (FLOPS), bandwidth, and read and write performance.
Background information
The following software is used to test the benchmark performance of an E-HPC cluster:
HPL: a benchmark that is used to test the FLOPS of high-performance computing clusters. HPL can evaluate the floating-point computing power of high-performance computing clusters. The evaluation is based on a test for solving dense linear unary equations of Nth degree by using Gaussian elimination.
iPerf: a tool used to test the maximum network bandwidth. The tool supports various parameters related to timing and protocols, and reports the bandwidth and packet loss.
FIO: an open source I/O stress test tool, which is used to test the I/O performance of disks. The tool supports multi-engine and multi-scenario testing.
Before you begin
Before you use an E-HPC client to run HPL, iPerf, and FIO to test the performance of an E-HPC cluster, make sure that HPL, iPerf, and FIO and their dependencies are installed in the cluster. Install the following software and the related dependencies:
HPL: Install intel-mpi 2018, linpack 2018, and openmpi 3.0.0.
iPerf: Install iPerf and intel-mpi 2018.
FIO: Install fio 3.1 and intel-mpi 2018.
You must run the yum install -y iperf
command on each node to install iperf. Other software can be installed in the console. For more information, see Install software.
Procedure
Start and log on to your E-HPC client.
In the left-side navigation pane, click Application Center.
Test the FLOPS.
Click the hpl application.
In the panel that appears, configure the parameters and click Submit. The following table describes the parameters.
Section
Parameter
Example
Description
Basic Parameters
Job Name
hpltest
The name of the job.
Queue
workq
The queue that you want to run the job.
Number of Cores
2
The number of CPU cores of a single node.
Number of Nodes
1
The number of compute nodes that are required to run the job.
Log Output
hpl_test.log
The output path of logs that are generated for the job.
Application Parameters
N
10000
The size of matrices that you want to solve. A larger matrix size N indicates a greater proportion of valid operations to all operations. Therefore, a larger N reflects a higher FLOPS of the system. However, a larger matrix size leads to higher memory usage. If the available memory space of the system becomes insufficient, the cache is used instead. Therefore, the system performance is greatly reduced. The optimal usage of system memory that the matrix occupies is about 80%. The following formula is used to calculate the value of N: N × N × 8 = Total system memory × 80%. The unit of the total memory is bytes.
NB
192 256
The size of block matrices when the matrices are solved. The optimal value of NB is obtained from actual tests.
Test the bandwidth.
Click the iperf application.
In the panel that appears, configure the parameters and click Submit. The following table describes the parameters.
Section
Parameter
Example
Description
Basic Parameters
Job Name
iperftest
The name of the job.
Queue
workq
The queue that you want to run the job.
Number of Cores
2
The number of CPU cores of a single node.
Number of Nodes
1
The number of compute nodes that are required to run the job.
Log Output
iperf_test.log
The output path of logs that are generated for the job.
Application Parameters
HostName
login0
The hostname of the node that you want to test.
Host NIC
eth0
The network interface controller (NIC) of the node that you want to test.
Test the read and write performance.
Click the fio application.
In the panel that appears, configure the parameters and click Submit. The following table describes the parameters.
Section
Parameter
Example
Description
Basic Parameters
Job Name
fiotest
The name of the job.
Queue
workq
The queue that you want to run the job.
Number of Cores
2
The number of CPU cores of a single node.
Number of Nodes
1
The number of compute nodes that are required to run the job.
Log Output
fio_test.log
The output path of logs that are generated for the job.
Application Parameters
ioengine
psync
The I/O engine. Valid values:
psync
libaio
The read or write method.
rw
The read or write method of the test. Valid values:
read: sequential reads
write: sequential writes
rw: sequential reads and writes
randread: random reads
randwrite: random writes
randrw: random reads and writes
I/O Block Size
4K
The block size for a single I/O test. Valid values: 4K and 16K.
Number of Threads
1
The number of threads for the test.
Runtime
100s
The runtime of the test.
I/O Size
1024M
The amount of data that is read or written.
Test File
/home/username
The path where the generated test file is stored.
View results
In the left-side navigation pane, click Job List.
Find the HPL, iPerf, and FIO jobs, confirm the job status, and then obtain the results.
If a job enters the FINISHED state, click Details in the Actions column. On the Job Details page, find Stdout Path and click View to view the result. Sample results:
HPL
iPerf
FIO