summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorQue Quotion2017-04-05 12:57:01 +0900
committerQue Quotion2017-04-05 12:57:01 +0900
commit2d1b6fc23a6d3f7e8738003247e8db1c43f31d14 (patch)
treeab0231df458b85231f3797a271a9e3ad7b6274a3
parent05fac17e79e86da012311b490a816bfadbbe3f13 (diff)
downloadaur-2d1b6fc23a6d3f7e8738003247e8db1c43f31d14.tar.gz
More speed: throttle can set around 300 attributes in one second!
-rw-r--r--.SRCINFO6
-rw-r--r--PKGBUILD4
-rwxr-xr-xthrottle24
3 files changed, 18 insertions, 16 deletions
diff --git a/.SRCINFO b/.SRCINFO
index d635c47bcbe0..57f044b2527f 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,9 +1,9 @@
# Generated by mksrcinfo v8
-# Tue Apr 4 18:35:10 UTC 2017
+# Wed Apr 5 03:56:03 UTC 2017
pkgbase = indicator-powersave
pkgdesc = User discretion power managment utility forked from CPU frequency indicator (bzr version)
pkgver = r98.8
- pkgrel = 1
+ pkgrel = 2
url = https://launchpad.net/indicator-cpufreq
arch = i686
arch = x86_64
@@ -39,7 +39,7 @@ pkgbase = indicator-powersave
sha512sums = 7e30098e35a72d66a885290a2be2aaf86b72f0242fd4d7ed62e81f9f6e7da378d70c7f7ef54701374dd1440f64173330457cdaf58a3a9bca35a59a57b29123a7
sha512sums = a0da38fbc7e28189bdb95992880cba5a8b4882a02cac00c13415b5a59c1dc63152965fc221069aafbd39e1e12bd93e3b7d028f50ebd215223e9ace3ee2f8642d
sha512sums = 2b1229ad56651a8d55590256785119da4eba2a2f8d74e57475a8303dc076d5e9067a6481e3245d05557ea0f983d8fa1f1ac02f705fe695f4a4ef79fa86b00b89
- sha512sums = c93dcee71e9ad465ca555a2c8f7da32247b4323a428ce1a63ecdab17fd471d51ffb86b174fa0f9662a27b656217d1bf73f9b47d6646cf99fb12f3df464d66073
+ sha512sums = 1bbfbfc8b705c7b0d11200ea5df0dcade68c677da34827da7ffdfa1d3b7f4ecfcdb034203a5f26a16bbd9dadf4d6bcee28176bc45468ec3890366f22cf2177b1
sha512sums = aa86b5d6028033d6fbcc3d74d63c33298c0d437972d576990dfc4cae51d5c5128d789695e98fc5612ec7f8a4e2e68ea0576cf072e98fce4e0c22896be2f8b996
pkgname = indicator-powersave
diff --git a/PKGBUILD b/PKGBUILD
index ba94f5e8cb11..d430c400c231 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,7 +3,7 @@
pkgname=indicator-powersave
pkgver=r98.8
-pkgrel=1
+pkgrel=2
pkgdesc="User discretion power managment utility forked from CPU frequency indicator (bzr version)"
arch=('i686' 'x86_64')
url="https://launchpad.net/indicator-cpufreq"
@@ -27,7 +27,7 @@ sha512sums=('SKIP'
'7e30098e35a72d66a885290a2be2aaf86b72f0242fd4d7ed62e81f9f6e7da378d70c7f7ef54701374dd1440f64173330457cdaf58a3a9bca35a59a57b29123a7'
'a0da38fbc7e28189bdb95992880cba5a8b4882a02cac00c13415b5a59c1dc63152965fc221069aafbd39e1e12bd93e3b7d028f50ebd215223e9ace3ee2f8642d'
'2b1229ad56651a8d55590256785119da4eba2a2f8d74e57475a8303dc076d5e9067a6481e3245d05557ea0f983d8fa1f1ac02f705fe695f4a4ef79fa86b00b89'
- 'c93dcee71e9ad465ca555a2c8f7da32247b4323a428ce1a63ecdab17fd471d51ffb86b174fa0f9662a27b656217d1bf73f9b47d6646cf99fb12f3df464d66073'
+ '1bbfbfc8b705c7b0d11200ea5df0dcade68c677da34827da7ffdfa1d3b7f4ecfcdb034203a5f26a16bbd9dadf4d6bcee28176bc45468ec3890366f22cf2177b1'
'aa86b5d6028033d6fbcc3d74d63c33298c0d437972d576990dfc4cae51d5c5128d789695e98fc5612ec7f8a4e2e68ea0576cf072e98fce4e0c22896be2f8b996')
pkgver() {
diff --git a/throttle b/throttle
index e5e59a9ff601..548694372233 100755
--- a/throttle
+++ b/throttle
@@ -56,13 +56,13 @@ while (( "$#" )); do
# Hyperthreads
for i in /sys/devices/system/cpu/cpu*/online; do \
[[ "$(printf "${i}" | tr -cd [:digit:])" -ge "${CORES}" ]] && \
- printf "${HYPERTHREADS}" > "${i}" & done &
+ printf "${HYPERTHREADS}" > "${i}" ; done &
+ [[ "${HYPERTHREADS}" == "1" ]] && wait
# CPU Governor
for i in /sys/bus/cpu/drivers/processor/cpu*/cpufreq/scaling_governor; do \
- [[ "${HYPERTHREADS}" == "0" && \
- "$(printf ${i} | tr -cd [:digit:])" -ge "${CORES}" ]] && \
- continue ; [[ "$(cat ${i})" == "${GOVERNOR}" ]] || printf "${GOVERNOR}" > "${i}" & done &
+ [[ "${HYPERTHREADS}" == "0" && "$(printf ${i} | tr -cd [:digit:])" -ge "${CORES}" ]] && \
+ continue ; printf "${GOVERNOR}" > "${i}" & done &
# Disable Intel P-State Turbo
[[ -f /sys/devices/system/cpu/intel_pstate/no_turbo ]] && \
@@ -98,7 +98,6 @@ while (( "$#" )); do
hdparm -qB "${APM}" -qM "${AAM}" /dev/[hs]d[a-z] 2> /dev/null &
# Runtime power management for devices (with exceptions for devices by VID:PID)
- # Timing the switch with hyperthread cores going up or down is tricky.
for i in /sys/{class/*,bus/*/devices}/*/power/control; do \
[[ "${CONTROL}" == "auto" ]] && \
[[ -n "$(printf ${i} | grep msr[${CORES}-$((${CORES} * 2 - 1))])" || \
@@ -108,7 +107,7 @@ while (( "$#" )); do
-f "$(printf ${i} | sed 's|/power.*|/idVendor|g')" && \
"$(cat $(printf ${i} | sed 's|/power.*|/idVendor|g'))" == "0424" && \
"$(cat $(printf ${i} | sed 's|/power.*|/idProduct|g'))" == "a700" ]] && \
- continue || [[ "$(cat ${i})" == "${CONTROL}" ]] || printf "${CONTROL}" > "${i}" & done &
+ continue ; printf "${CONTROL}" > "${i}" & done &
# USB Autosuspend (with exceptions for devices by VID:PID)
for i in /sys/bus/usb/devices/*/power/autosuspend{,_delay_ms}; do \
@@ -118,13 +117,13 @@ while (( "$#" )); do
-f "$(printf ${i} | sed 's|/power.*|/idVendor|g')" && \
"$(cat $(printf ${i} | sed 's|/power.*|/idVendor|g'))" == "0424" && \
"$(cat $(printf ${i} | sed 's|/power.*|/idProduct|g'))" == "a700" ]] && \
- continue ; [[ "$(cat ${i})" == "${AUTOSUSPEND}" ]] || printf -- "${AUTOSUSPEND}" > "${i}" & done &
+ continue ; printf -- "${AUTOSUSPEND}" > "${i}" & done &
# Powersaving for modules
for i in /sys/module/*/parameters/power_save; do \
- [[ "$(cat ${i})" == "${POWERSAVE}" ]] || printf "${POWERSAVE}" > "${i}" & done &
+ printf "${POWERSAVE}" > "${i}" & done &
for i in /sys/module/*/parameters/power_save_controller; do \
- [[ "$(cat ${i})" == "${CONTROLLER}" ]] || printf "${CONTROLLER}" > "${i}" & done &
+ printf "${CONTROLLER}" > "${i}" & done &
# Network powersaving
for i in /sys/class/net/wl*; do \
@@ -160,7 +159,8 @@ while (( "$#" )); do
[[ -z "${HYPERTHREADS}" ]] && \
printf "${0} ht {on,off} - Hyperthreads\n" || \
for i in /sys/devices/system/cpu/cpu*/online; do [[ "$(printf "${i}" | tr -cd [:digit:])" -ge "${CORES}" ]] && \
- printf "${HYPERTHREADS}" > "${i}" & done &
+ printf "${HYPERTHREADS}" > "${i}" ; done &
+ [[ "${HYPERTHREADS}" == "1" ]] && wait
[[ -n "${SHIFT}" ]] && shift "${SHIFT}" || shift
unset HYPERTHREADS SHIFT
;;
@@ -175,7 +175,9 @@ while (( "$#" )); do
[[ -z "${GOVERNOR}" ]] && \
printf "${0} gov {cut,full} - CPU Governor\n" || \
for i in /sys/bus/cpu/drivers/processor/cpu*/cpufreq/scaling_governor; do \
- printf "${GOVERNOR}" > "${i}" & done &
+ [[ "$(printf ${i} | tr -cd [:digit:])" -ge "${CORES}" && \
+ "$(cat /sys/devices/system/cpu/cpu$(printf ${i} | tr -cd [:digit:])/online)" == 0 ]] && \
+ continue ; printf "${GOVERNOR}" > "${i}" & done &
[[ -n "${SHIFT}" ]] && shift "${SHIFT}" || shift
unset GOVERNOR SHIFT
;;