I also learned about Intel’s SuspendResume project today. Again, it is not new, it has been around since 2014. See this recent SmackeralOfOpinion blog for a screenshot and a better description:
http://smackerelofopinion.blogspot.com/2015/08/identifying-suspendresume-delays.html
The Suspend/Resume project provides a tool for system developers to visualize the activity between suspend and resume, allowing them to identify inefficiencies and bottlenecks. The use of Suspend/Resume is an excellent way to save power in Linux platforms, whether in Intel based mobile devices or large-scale server farms. Optimizing the performance of suspend/resume has become extremely important because 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 tool will execute a suspend, and will capture dmesg and ftrace data from suspend start to resume completion. This data is transformed into a set of timelines and callgraphs to give a quick and detailed view of which devices and kernel processes are taking the most time in suspend/resume. The output of the tool is a single html file which makes use of embedded CSS and JavaScript to create the timelines and callgraphs. The file can be viewed in any Linux browser, such as Firefox or Chromium. This project is for kernel developers, testers, debuggers, and other contributors working on Intel-based client or server systems.