By Matthew Dublin
Raul Gomez, aka NachoGomez, has developed an automated benchmarking tool for HPC clusters called
ClusterNumbers. Gomez's new tool incorporates a set of benchmarks capable of providing a thorough overview of CPU, memory, and network performance. ClusterNumbers aims to cover the following metrics:
PTRANS (network): Allows you to measure the total network transfer capacity of the cluster using large blocks of data, performing a matrix transpose.
High Performance Linpack (HPL): The classical Linpack measures floating point operations per second (FLOPS) across the whole cluster.
DGEMM (CPU): Similar to Linpack, but just matrix-matrix multiply on separate nodes without communications between them.
STREAM (memory): Measures bandwidth between CPU and memory using vector-scalar multiply-add operations.
RandomAccess (memory): Measures the update rate of integers in random memory locations.
FFTE (CPU): Measures CPU execution rate in FLOPS for Discrete Fast Fourier Transforms.
b_eff (network): Measures latency and bandwidth of the cluster’s network using small data sets and MPI routines.
Netperf (network): Used for peer-to-peer network testing.
IOzone (disk): Measures various I/O operations.
ClusterNumbers is coded in Python and at the moment only runs on Linux x86 and x86_64. The tool is broken into three parts, the Server Module, the Communications Module and the Graphical Module.
The Server Module is in charge of analyzing the entire cluster by walking each node and gathering information about processor type and quantity, OS architecture and amount of memory of each node. The Communications Module consists of a standard SSH server running on the admin node of the cluster and a set of libraries and routines on the client side called by the Graphical Module. And finally, the Graphical Module runs from a desktop PC and handles the interaction with the user. The first time you connect to a cluster using the GM you’ll be presented with this log-in window.
The project, currently hosted at Source Forge, will be open for contributions from the user community by the end of the month.