1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- TMON - A Monitoring and Testing Tool for Linux kernel thermal subsystem
- Why TMON?
- ==========
- Increasingly, Linux is running on thermally constrained devices. The simple
- thermal relationship between processor and fan has become past for modern
- computers.
- As hardware vendors cope with the thermal constraints on their products, more
- and more sensors are added, new cooling capabilities are introduced. The
- complexity of the thermal relationship can grow exponentially among cooling
- devices, zones, sensors, and trip points. They can also change dynamically.
- To expose such relationship to the userspace, Linux generic thermal layer
- introduced sysfs entry at /sys/class/thermal with a matrix of symbolic
- links, trip point bindings, and device instances. To traverse such
- matrix by hand is not a trivial task. Testing is also difficult in that
- thermal conditions are often exception cases that hard to reach in
- normal operations.
- TMON is conceived as a tool to help visualize, tune, and test the
- complex thermal subsystem.
- Files
- =====
- tmon.c : main function for set up and configurations.
- tui.c : handles ncurses based user interface
- sysfs.c : access to the generic thermal sysfs
- pid.c : a proportional-integral-derivative (PID) controller
- that can be used for thermal relationship training.
- Requirements
- ============
- Depends on ncurses
- Build
- =========
- $ make
- $ sudo ./tmon -h
- Usage: tmon [OPTION...]
- -c, --control cooling device in control
- -d, --daemon run as daemon, no TUI
- -l, --log log data to /var/tmp/tmon.log
- -h, --help show this help message
- -t, --time-interval set time interval for sampling
- -v, --version show version
- -g, --debug debug message in syslog
- 1. For monitoring only:
- $ sudo ./tmon
|