From 15c953240c4aa7768b7b76e68483d4e961bb28cb Mon Sep 17 00:00:00 2001 From: Dustin Kirkland Date: Wed, 17 Jun 2009 18:15:16 -0500 Subject: [PATCH] * profiles/common: massive rework of status frequencies; use prime numbers to minimize collisions; increase/decrease a few, based on statistical testing of required runtimes Signed-off-by: Dustin Kirkland --- debian/changelog | 18 +++++++-------- profiles/common | 59 +++++++++++++++++++++++++++--------------------- 2 files changed, 42 insertions(+), 35 deletions(-) diff --git a/debian/changelog b/debian/changelog index 4304ec2b..47eaef7e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -10,14 +10,9 @@ byobu (2.12) unreleased; urgency=low all status scripts from *-* to *_*; this allows us to source the ~/.byobu/status file, rather than grepping through it for configuration information, yielding significant performance improvements - * profiles/common: - - decrease mem-used to run every 10 seconds - - decrease disk-used to run every 30 seconds - - decrease wifi_quality to run every 10 seconds - - decrease release to run every 60 minutes, to handle dist upgrades - - decrease processes to run every 10 seconds - - increase hostname to run every 10 minutes, since its cheap - - increase uptime to run every 30 seconds, since its cheap + * profiles/common: massive rework of status frequencies; use prime numbers + to minimize collisions; increase/decrease a few, based on statistical + testing of required runtimes * bin/wifi_quality: significant performance improvements, remove unneeded route call, cache iwconfig output so that it's only called once * bin/processes: improve performance by listing /proc (doubles the speed) @@ -37,6 +32,11 @@ byobu (2.12) unreleased; urgency=low improvement * bin/network: pull network bytes directly from /proc/net/dev, performance improvement + * bin/users: use pgrep -c, performance improvement + * bin/time, bin/date, bin/reboot-required: use case statement, performance + improvement + * bin/battery: ensure that only one present battery is displayed in the + status area * bin/disk, bin/disk_used, profiles/common, profiles/profile.skel: collapse disk usage down to a single status script for performance, support disk partitions as well as mountpoints in ~/.byobu/disk, @@ -54,7 +54,7 @@ byobu (2.12) unreleased; urgency=low profiles/profile.skel, rpm/byobu.spec: add a mail status notification, LP: #387936 - -- Dustin Kirkland Wed, 17 Jun 2009 15:20:30 -0500 + -- Dustin Kirkland Wed, 17 Jun 2009 18:14:18 -0500 byobu (2.11-0ubuntu1) karmic; urgency=low diff --git a/profiles/common b/profiles/common index 953f375a..09408823 100644 --- a/profiles/common +++ b/profiles/common @@ -26,35 +26,42 @@ vbell off msgwait 1 # Define status commands -backtick 99 86400 86400 byobu-status logo -backtick 100 600 600 byobu-status release -backtick 101 30 30 byobu-status updates_available -backtick 102 10 10 byobu-status reboot_required +# Use prime number intervals, to decrease collisions, which +# yields some less expensive status updates. +# 86399 ~1 day +# 599 ~10 minutes +# 181 ~3 minutes +# 61 ~1 minute +# 59 ~1 minute +backtick 99 86399 86399 byobu-status logo +backtick 100 599 599 byobu-status release +backtick 101 181 181 byobu-status updates_available +backtick 102 3 3 byobu-status reboot_required backtick 103 2 2 byobu-status cpu_freq -backtick 104 86400 86400 byobu-status cpu_count -backtick 105 86400 86400 byobu-status mem_available +backtick 104 86399 86399 byobu-status cpu_count +backtick 105 86399 86399 byobu-status mem_available backtick 106 2 2 byobu-status load_average -backtick 107 10 10 byobu-status mem_used -backtick 108 600 600 byobu-status ec2_cost -backtick 109 600 600 byobu-status hostname -backtick 110 86400 86400 byobu-status whoami -backtick 111 86400 86400 byobu-status menu -backtick 112 86400 86400 byobu-status arch -backtick 113 30 30 byobu-status battery -backtick 114 10 10 byobu-status users -backtick 115 30 30 byobu-status uptime -backtick 116 10 10 byobu-status processes +backtick 107 7 7 byobu-status mem_used +backtick 108 599 599 byobu-status ec2_cost +backtick 109 599 599 byobu-status hostname +backtick 110 86399 86399 byobu-status whoami +backtick 111 86399 86399 byobu-status menu +backtick 112 86399 86399 byobu-status arch +backtick 113 61 61 byobu-status battery +backtick 114 11 11 byobu-status users +backtick 115 29 29 byobu-status uptime +backtick 116 7 7 byobu-status processes backtick 117 2 2 byobu-status network -backtick 118 86400 86400 true -backtick 119 10 10 byobu-status wifi_quality -backtick 120 86400 86400 byobu-status date -backtick 121 86400 86400 byobu-status time -backtick 122 600 600 byobu-status ip_address -backtick 123 10 10 byobu-status disk -backtick 124 86400 86400 byobu-status true -backtick 125 30 30 byobu-status temp_c -backtick 126 30 30 byobu-status temp_f -backtick 127 10 10 byobu-status mail +backtick 118 86399 86399 true +backtick 119 11 11 byobu-status wifi_quality +backtick 120 86399 86399 byobu-status date +backtick 121 86399 86399 byobu-status time +backtick 122 599 599 byobu-status ip_address +backtick 123 7 7 byobu-status disk +backtick 124 86399 86399 byobu-status true +backtick 125 29 29 byobu-status temp_c +backtick 126 29 29 byobu-status temp_f +backtick 127 3 3 byobu-status mail hardstatus alwayslastline