pm-graph
The Value of the pm-graph Project
System developers can access the sleepgraph and bootgraph tools to visualize the activity in suspend, resume, and boot for Linux* systems. These tools:
- Enable users to identify inefficiencies and bottlenecks.
- Provide guidance for saving power in Linux* platforms, whether in mobile devices using Intel® technology or large-scale server farms.
Optimizing the performance of suspend and resume for the power mode has become extremely important. The more time spent entering and exiting low-power modes, the less the system can be in use.
Using a kernel image built with a few extra options enabled, the tools run a suspend or boot, and capture dmesg and ftrace data. This data is transformed into a set of timelines and a call graph to give a quick and detailed view of which devices and kernel processes are taking the most time in suspend, resume, and boot. Each tool outputs a single HTML file that uses embedded CSS and JavaScript* to create the timelines and call graphs. The file can be viewed in any Linux* browser, such as Firefox* or Chromium*.
Who This Is For
This project is for kernel developers, testers, debuggers, and other contributors working on client or server systems that are based on Intel® processors.
Project Specifics
This open source project is distributed under the open source GNU* General Public License v2. pm-graph is written entirely in Python*, which has a mature and established codebase.
It is optimized for Intel processors.
Intel's Contributions to pm-graph
Intel contributes to the Linux kernel code base and the power management subsystem where suspend and resume are handled. As a result, the ecosystem is enabled to build more efficient client and server systems.
News & Blogs
Optimize USB Resume Code by Using Minimum Delays
The USB resume code in the kernel uses a set of hard-coded delay values that are defined in the USB v2.0 specification.
Fix a Delay
Learn how to troubleshoot and resolve an error that occurs during the resume_complete phase.
USB Resume with Parallel Enumeration of Separate Hosts
The usb_address0 mutex is used for all devices on any host. This unnecessary use can cause delays.
Explore the world of Intel’s open platform projects, contributions, community initiatives, and more at open.intel.com. |