All Products
Search
Document Center

Elastic High Performance Computing:Run HPL, iPerf, and FIO to test cluster performance

Last Updated:Jan 09, 2023

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

  1. Start and log on to your E-HPC client.

  2. In the left-side navigation pane, click Application Center.

  3. Test the FLOPS.

    1. Click the hpl application.

    2. 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.

  4. Test the bandwidth.

    1. Click the iperf application.

    2. 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.

  5. Test the read and write performance.

    1. Click the fio application.

    2. 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

  1. In the left-side navigation pane, click Job List.

  2. 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

      HPL
    • iPerf

      iPerf
    • FIO

      FIO