泰晓科技 -- 聚焦嵌入式 Linux - 追本溯源,见微知著!
网站地址:http://tinylab.org
微信公众号关注我们新浪微博


扫一扫

关注 @泰晓科技
原创服务 | 实验云台 | 共享书籍 | 分享桌面 | 直播回放
请稍侯

Linux 数据渲染套件

含数字示波器 Oscilloscope 等工具,可辅助系统优化
Wu Zhangjin 创建于 2015/10/01

Introduction

This project aims to collects tools for drawing The Data.

Data is often organized in strings, which is not that Intuitively.

To show the data more friendly, we often need to draw the data in a graph.

Different data need different tools, this project aims to collect or develop
such tools.

Tools developed by TinyLab.org

  • oscope A digital oscilloscope, dramatize the data flow real time

This is based on the oscilloscope and tuna: http://git.kernel.org/?p=utils/tuna/tuna.git;a=summary

  • histogram.sh draws the “two row data” in SVG with histogram

This tool derives from (Linux)/scripts/bootgraph.pl and FlameGraph.

See an example output, you can open it to get an interactive view.

linux-boot-histogram.svg

Tools Collected From Internet

  • gnuplot can convert the data to a static graph.

Gnuplot is a portable command-line driven graphing utility for Linux, OS/2,
MS Windows, OSX, VMS, and many other platforms. The source code is
copyrighted but freely distributed (i.e., you don’t have to pay for it). It
was originally created to allow scientists and students to visualize
mathematical functions and data interactively, but has grown to support many
non-interactive uses such as web scripting. It is also used as a plotting
engine by third-party applications like Octave. Gnuplot has been supported
and under active development since 1986.

  • systrace exports Ftrace output to an interactive HTML report with AJAX feature.

The Systrace tool helps analyze the performance of your application by
capturing and displaying execution times of your applications processes and
other Android system processes. The tool combines data from the Android
kernel such as the CPU scheduler, disk activity, and application threads to
generate an HTML report that shows an overall picture of an Android device’s
system processes for a given period of time.

  • FlameGraph is able to draw a large number of the function call trees and the profiling data in a single SVG.

Flame graphs are a visualization of profiled software, allowing the most
frequent code-paths to be identified quickly and accurately. They can be
generated using my Perl programs on https://github.com/brendangregg/FlameGraph, which create interactive SVGs.

  • Gprof2Dot converts the output from many profilers into a dot graph.

It supports many profilers: prof, gprof, VTune Amplifier XE, linux perf,
oprofile, Valgrind’s callgrind tool, sysprof, xperf, Very Sleepy, AQtime,
python profilers, Java’s HPROF; prunes nodes and edges below a certain
threshold; uses an heuristic to propagate time inside mutually recursive
functions; uses color efficiently to draw attention to hot-spots; works on
any platform where Python and graphviz is available, i.e, virtually anywhere.

  • VnstatSVG converts the vnStat output (network traffic data) to AJAX output.

vnStatSVG is a lightweight AJAX based web front-end for network traffic
monitoring; To use it, its backend vnStat must be
installed at first; It only requires a CGI-supported http server but also
generates a graphic report with SVG output, vnStatSVG is friendly to generic
Linux hosts, servers, embedded Linux systems and even Linux clusters.

  • AnalyzeSuspend a tool for system developers to visualize the activity between suspend and resume

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.