Skip to content

System reporting tool for Linux on Arm that shows how a server is configured, especially in relation to "perf" features.

License

Notifications You must be signed in to change notification settings

ArmDeveloperEcosystem/sysreport

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

System Capabilities Reporter

Sysreport is a system capability reporting tool that gives application developers a quick summary of how the system is configured and what performance features are available, on the Linux system the tool is running on.

This tool is aimed at anyone trying to profile performance on Arm-based systems; this includes cloud instances, bare metal servers, and small devices such as developer boards and Raspberry Pi devices.

The tool is invoked on the command-line and takes about a second to run. It displays a single page of output in text format.

Sysreport is not a benchmarking tool and does not modify the system in any way. It is also not intended to report current system status, only system configuration.

This tool aims to:

  • Report system configuration in a way that is focused on performance analysis, list which performance tools and features are available
  • Give useful advice on what you might do to improve your configuration for performance analysis
  • Run on any system (bare metal vs VM vs container, different operating systems and kernels, root vs non-root access, etc.)
  • Save the user from having to read multiple pages of documentation to understand what individual commands to run to gather everything they need

Example use cases:

  • As a developer, I want to know if my cloud instance supports a particular performance feature I require, so that I am able to debug a performance problem
  • As a developer, I want a quick single page summary of my system's performance configuration, so that I don't have to run lots of different commands manually
  • As a developer, I would like to know suggested configuration changes I can make to my system, so that I can improve my ability to collect performance information

Usage

Clone this git repository (or copy the repository contents) onto the target system for evaluation:

git clone https://github.com/ArmDeveloperEcosystem/sysreport.git

Now change into the src directory:

cd sysreport/src

To print usage help:

python sysreport.py --help

Example usage:

  • System overview with increased verbosity:
    python sysreport.py --verbose
  • Check which kernel configuration options were set at build time:
    python sysreport.py --config
  • System overview with additional information about which security vulnerabilities the system is exposed to:
    python sysreport.py --vulnerabilities

Learning Path

Check out the Arm Learning Path for this tool.

Compatibility

This tool only supports Linux. It has been tested on a variety of Arm-based systems in different configurations.

Please consider raising an issue in GitHub if this tool does not work as expected on your system.

License

Apache-2.0 License

Acknowledgements

This project was created on behalf of the Arm Software Developers team, follow them on Twitter: @ArmSoftwareDev and YouTube: Arm Software Developers for more resources!

About

System reporting tool for Linux on Arm that shows how a server is configured, especially in relation to "perf" features.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages