[Çözüldü] Laptop ısınıp kapanıyor. İşlemci frekans sınırlama konusu

Başlatan metaltrrocker, 23 Mart 2016 - 23:27:35

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

metaltrrocker

Merhabalar.
Öncelikle sistemim hakkında bilgi vereyim.
Samsung-Q530 laptop kullanıyorum.
Kullandığım dağıtım: Netrunner 14.3 Kde
Prime kurulu.
uname -r çıktısı:
3.13.0-83-generic

Maalesef bilgisayarım geçmişteki haşinbir şekilde render, server muamelesi ve bilimum kötülükler sonucu thermal sınıra anlık olarak yaklaşıp kendini kapatabiliyor. Windows tarafında bu sorunu güç yönetimi kısmından yaklaşık %90 performansta çalıştırabiliyorum. Oyun, render, vs gibi işlemleri (kısacası ekran kartı + işlem gücünü zorlayan işlemler) bilgisayarı sınırlara zorlamadan kullanabiliyorum. Bunu linux tarafında yapabilmek için
cpufrequtils paketiyle biraz haşır neşir oldum.
İşlemci hızını bu şekilde okuyorum:
cat /proc/cpuinfo | grep -i mhz



sudo cpufreq-set -g userspace
ve
sudo cpufreq-set -u 2.40Ghz
veya
sudo cpufreq-set -u 1.60Ghz -c 0 şeklinde işlemci çekirdeklerine maksimum değerleri atayınca oluyor gibi. Şu anda kısaca test ediyorum.
Ancak bunu bilgisayar her açıldığında yapmak benim için sorunlu. Kde kullanıyorum açılışta işlemci hızaşırtmayı biraz bonkörce kullanıyor.
/etc/defaults/cpufrequtils dosyasının içeriğini değiştirdim Governer seçeneği "userspace" olarak tanımlı. Bu kısımda benim maksimum işlemci frekansını ayarlamam lazım ancak dökümanlarda değişkeni nasıl tanımlayabileceğime tam olarak ulaşamadım. Bu konuya fazla odaklandığım ve canımı sıktığı için görememiş olabilirim.
Kabaca "cpufrequtils" dosya içeriğini
GOVERNOR="userspace"
MAX="2266000"

olarak denedim ancak çalışmadı.

Bu konuda yardımlarınızı bekliyorum.
(Lütfen, "nvidiayı kapatıp inteli kullan","fanı temizle","işlemcinin termal macununu yenile","Biostan boostu kapat" tarzında öneriler vermeyiniz. Bunlar benim bilgisayarımda tanımlı olmayan veya düzenli olarak yaptığım bakımlar arasındadır.)
Önerileriniz için şimdiden teşekkür ederim. Diğer çıktıları aşağıya ekliyorum.


lspci | egrep "VGA|3D|Display" çıktısı
00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 02)
02:00.0 3D controller: NVIDIA Corporation GT216M [GeForce GT 330M] (rev a2)


glxinfo | grep render çıktısı
direct rendering: Yes
OpenGL renderer string: GeForce GT 330M/PCIe/SSE2
    GL_KTX_buffer_region, GL_NVX_conditional_render, GL_NVX_gpu_memory_info,
    GL_NV_ES1_1_compatibility, GL_NV_blend_square, GL_NV_conditional_render,
    GL_NV_parameter_buffer_object2, GL_NV_path_rendering,
    GL_KTX_buffer_region, GL_NVX_conditional_render, GL_NVX_gpu_memory_info,
    GL_NV_ES1_1_compatibility, GL_NV_blend_square, GL_NV_conditional_render,
    GL_NV_parameter_buffer_object2, GL_NV_path_rendering,



heartsmagic

Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

metaltrrocker

Çıktı
#!/bin/sh
### BEGIN INIT INFO
# Provides:       cpufrequtils
# Required-Start: $remote_fs loadcpufreq
# Required-Stop:
# Default-Start:  2 3 4 5
# Default-Stop:
# Short-Description: set CPUFreq kernel parameters
# Description: utilities to deal with CPUFreq Linux
#       kernel support
### END INIT INFO
#

DESC="CPUFreq Utilities"

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
CPUFREQ_SET=/usr/bin/cpufreq-set
CPUFREQ_INFO=/usr/bin/cpufreq-info
CPUFREQ_OPTIONS=""

# use lsb-base
. /lib/lsb/init-functions

# Which governor to use. Must be one of the governors listed in:
#   cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
#
# and which limits to set. Both MIN_SPEED and MAX_SPEED must be values
# listed in:
#   cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
# a value of 0 for any of the two variables will disabling the use of
# that limit variable.
#
# WARNING: the correct kernel module must already be loaded or compiled in.
#
# Set ENABLE to "true" to let the script run at boot time.
#
# eg:   ENABLE="true"
#       GOVERNOR="ondemand"
#       MAX_SPEED=1000
#       MIN_SPEED=500

ENABLE="true"
GOVERNOR="ondemand"
MAX_SPEED="0"
MIN_SPEED="0"

check_governor_avail() {
        info="/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors"
        if [ -f $info ] && grep -q "\<$GOVERNOR\>" $info ; then
                return 0;
        fi
        return 1;
}

[ -x $CPUFREQ_SET ] || exit 0

if [ -f /etc/default/cpufrequtils ] ; then
        . /etc/default/cpufrequtils
fi

# if not enabled then exit gracefully
[ "$ENABLE" = "true" ] || exit 0

if [ -n "$MAX_SPEED" ] && [ $MAX_SPEED != "0" ] ; then
        CPUFREQ_OPTIONS="$CPUFREQ_OPTIONS --max $MAX_SPEED"
fi

if [ -n "$MIN_SPEED" ] && [ $MIN_SPEED != "0" ] ; then
        CPUFREQ_OPTIONS="$CPUFREQ_OPTIONS --min $MIN_SPEED"
fi

if [ -n "$GOVERNOR" ] ; then
        CPUFREQ_OPTIONS="$CPUFREQ_OPTIONS --governor $GOVERNOR"
fi

CPUS=$(cat /proc/stat|sed -ne 's/^cpu\([[:digit:]]\+\).*/\1/p')
RETVAL=0
case "$1" in
        start|force-reload|restart|reload)
                log_action_begin_msg "$DESC: Setting $GOVERNOR CPUFreq governor"
                if check_governor_avail ; then
                        for cpu in $CPUS ; do
                                log_action_cont_msg "CPU${cpu}"
                                $CPUFREQ_SET --cpu $cpu $CPUFREQ_OPTIONS 2>&1 > /dev/null || \
                                        RETVAL=$?
                        done
                        log_action_end_msg $RETVAL ""
                else
                        log_action_cont_msg "disabled, governor not available"
                        log_action_end_msg $RETVAL
                fi
                ;;
        stop)
                ;;
        *)
                echo "Usage: $0 {start|stop|restart|reload|force-reload}"
                exit 1
esac

exit 0



Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 24 Mart 2016 - 22:31:21

GOVERNOR="ondemand"
MAX_SPEED="0"

Bu iki satırı ayarlarsam sorun hallolacak gibi duruyor.

heartsmagic

Orada değil de sen yine /etc/defaults/cpufrequtils dosyasında değişiklik yap. Girdi olarak da bu biçimi kullanırsın, MAX_SPEED yani. 
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

metaltrrocker

Deneme yapayım umarım işe yarar. Peki yaptığım değişiklik işletim sisteminin başlamasında hangi aşamada geçerli oluyor?

heartsmagic

Başlatma sürecinin ilk zamanlarında oluyor burada, zira bir init servisi olarak ayarlanıyor kendisi. Masaüstüne falan gelindiğinde çoktan hazır olması gerekiyor kısacası.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

metaltrrocker

Sistemi test ettim. Şu anda istediğim şekilde üst frekans sınırını ayarlayabiliyorum, herhangi bir kapanma olmadı.
İlaç gibi geldi teşekkür ederim :)

ahmet_matematikci

♥ Kız tavlamak için kahraman olmak gerekmez. Doğru kadın zaten sizi kahraman yapar ;)

metaltrrocker