HomePage


nmon for Linux


nmon is short for Nigel's performance Monitor for Linux on POWER, x86, x86_64, Mainframe & now ARM (Raspberry Pi)

Also tools that will work equally with nmon for AIX (shipped with AIX from IBM)


new njmon for Linux & AIX



njmon is similar but saves data to JSON format for a new generation of online time-series databases and web browser graphing


Are these tools popular?
nmon, njmon and related tools hit 1 million downloads on 5th Sept 2020 - Current Total download: - Monthly:

This systems administrator, tuner, and benchmark tool the gives you a huge amount of important performance information in one go. It can output the data in two ways

  1. On screen (console, telnet, VNC, putty or X Windows) using curses for low CPU impact which is updated once every two seconds. You hit single characters on you keyboard to enable/disable the various sorts of data.
    • You can display the CPU, memory, network, disks (mini graphs or numbers), file systems, NFS, top processes, resources (Linux version & processors) and on Power micro-partition information.
    • For lots of examples, see the "Screen shots" from the left menu.
    • As you can see on the right nmon16 now in colour
  2. Save the data to a comma separated file for analysis and longer term data capture.
    • Use nmonchart (from this website) to generate a Google-chart graphs in a webpage.
    • Use this together with nmon Analyser - Microsoft Excel spreadsheet, which loads the nmon output file and automatically creates dozens of graphs ready for you to study or write performance reports.
  3. Latest version nmon for Linux is 16m
    Download the precompiled binaries or nmon source code

More details

  • nmon is a single binary for
    • each operating system (Red Hat, SUSE, Ubuntu, Fedora, OpenSUSE etc.) and
    • each platform (Power, Mainframe, arm, x86 or x86_64).
  • Installing is very easy - just start the right executable binary file.
    • Or rename the version you need to /usr/bin/nmon and then type: nmon
  • Why use five or six tools when one free tool can give you everything you need!!
  • For the pre-compiled versions - click on Download
  • For the source code & compiling - click on Compiling nmon

On-screen

When using nmon via a terminal session you can see the performance data directly on the screen and updated every second. You should if possible, stretch the terminal window to be longer to see more stats at one time. Here is a sample example from a Raspberry Pi 2 running Ubuntu 15.10 and nmon v16b. I typed "cCUd" to display this data.

For more screen shots take the left-hand side menu option Screen shots or click Screen shots.


Data Analysis

Once you save the nmon data you have a number of options to analyse and graph the statistics:

  • nmonchart tool/script - see left hand menu
    • Nigel's nmonchart tools is quick and simple to convert a nmon output file to a webpage file .html that you can open with a browser directly or add to a website to share.
    • It takes a second or too and generates very nice looking graphs.
    • It is implemented in Korn shell script so you can add features (please share your updates).
    • The Clever part is using the Google.com Charting Javascript Library and your browser to do the actual graphing.
    • This this works on your PC, tablet or even larger mobile phone regardless of operating system.
    • Click here to find out more nmonchart
  • nmon Analyser Excel Spread-sheet Download page
    • This is the original tool and been developed over many years by Stephen Atkins
    • However, Linux users might not like the idea of using the Microsoft Excel Spreadsheet and automating the creation of graphs can be tricky.
    • Sample Graphs out of the many (see screen shots for more and larger examples:
    • CPU Compared to Disk I/O
    • Disk Read and Write with I/O per second
    • Hot Disk analysis with Average, Weighted Average and Peak values
    • Network Read (top half) and Write (bottom half) Transfer Rates
  • nmonconsolidator
    • Withdrawn 2023
  • nmon2rrd
    • Withdrawn 2013

Now - Open Source

nmon for Linux is a single source code file of 5000 lines and single makefile. This will enable you to compile nmon for your precise Linux version (if you can't find what you want in the binaries) and open a few other possibilities:

  • Fixing my code - be gentle, please.
  • Removing magic numbers i.e. constants that can catch us out as machines get larger
  • Developing for some strange environments like machines with no disks, blades that boot from NFS, internal Linux based engines within disks subsystems, embedded machines.
  • Who knows we may get nmon for Linux within the Linux Distro's - any one know how to go about that?

Thanks for your support, suggestions, testing and I hope this starts a whole new wave of development and interest.


History

  • nmon for Linux was an internal project at IBM for many years and was released to open source under GPL on 27th July 2009.
  • Sourceforge.net is being used to host the project, see http://sourceforge.net/projects/nmon
  • nmon for AIX does has a similar online look, file format but was always complete different source code.
    • It is now integrated into AIX topas command from
      • AIX 5.3 TL09
      • AIX 6.1 TL02.
    • nmon for AIX is not open source.
    • It is part of the IBM AIX Performance Tools and installed with AIX for many years.