Skocz do zawartości

Skalowanie Częstotliwości Cpu


ALvarez

Rekomendowane odpowiedzi

Witam.

Wczoraj

Przygód ze skalowaniem ciag dalszy.

 

W ramach poszukiwan rozwiazania zagadki uruchomilem z CD Knoppixa.

Podczas uruchamiania przy opisie sprzetu bylo cos takiego:

 

cpu0,1: Intel® Core2 CPU T7200 @ 2.00 GHz @ 1000 MHz, 4096 kB Cash

 

Moze rzeczywiscie jest gdzies jakas blokada.

 

Sprawdzilem we wlasciwosciach w WinXP

 

cpu0,1: Intel® Core2 CPU T7200 @ 2.00 GHz @ 998 MHz, 1.99 GB RAM

 

Moze rzeczywiscie tak musi byc.

 

Robilem jeszcze rózne porównania tak, ze na czterech pulpitach bylo po otwieranych sporo programów.

System nie wytrzymal i sie zawiesil na sztywno, pomoglo dopiero wylaczenie zasilania.

 

Po powtórnym uruchomieniu niespodzianka, dziala skalowanie czestotliwosci co prawda tylko w zakresie 1.0GHz do 1.33GHz ale dobre i to.

Sprawdzam plik bios_limit ja byk 1333000. Tajn prirody.

 

Uruchamiam rózne programy, skalowanie w tym zakresie dziala bardzo ladnie.

 

Uzywam Gkrellm, pod czestotliwoscia CPU wyswietlane sa temperatury obu rdzeni i nastepne zaskoczenie - znacznie spadla temperatura i zachowywala sie bardziej stabilnie.

 

Niestety wszystko co dobre to sie szybko konczy.

 

Po dzisiejszym uruchomieniu komputera wszystko wrócilo do normy, w bios_limit znowu 1000000 temperatura lata od 37 do 60.

 

Trzeba bedzie poczekac do kolejnego zwisu.

 

I co ja mam z tym zrobic???????

 

Pozdrawiam.

ALvarez

Odnośnik do komentarza
Udostępnij na innych stronach

Witam!

Przeczytalem Fedora 15 Power Management Guide i jescze troche innych FAQ, uwag na róznych forach, reasumujac wszystko obraca sie wokól Power Management Guide. Sprawdzalem rózne metody skalowania f cpu ale w sumie wszystko opiera sie na plikach w katalogu /sys/devices/system/cpu/.

Problem polega natym, ze nie moge zadnym sposobem wyedytowac plików configurujacych cpufreq - dlaczego???

W Power Management Guide napisano:

3.2.3. Tuning CPUfreq Policy and Speed

Once you've chosen an appropriate CPUfreq governor, you can further tune the speed of each CPU using the tunables found in /sys/devices/system/cpu/[cpu ID]/cpufreq/. These tunables are:

itd.

oraz:

When setting policy limits, you should set scaling_max_freq before scaling_min_freq.

i przykladowo:

echo 360000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq.

 

I powtórze - dlaczego u mnie edycja tych plików(oczywisci jako root) czy to VIM'em czy z konsoli czy jakim kolwiek edytorem nie zmienia w zawartosci plików.

 

I jeszcze jedno - plik bios_limit jest dodawany tylko przez driver acpi-freq i skad on bierze informacje o f cpu??

 

Pozdrawiam.

ALvarez

 

O! nie wiem dlaczego wyszly mi takie duze ramki

Edytowane przez WalDo
codebox -> code. Używaj "code" jak masz kilka linijek. Do cytowania "nie-kodu" używamy [quote]...[/quote]
Odnośnik do komentarza
Udostępnij na innych stronach

I powtórze - dlaczego u mnie edycja tych plików(oczywisci jako root) czy to VIM'em czy z konsoli czy jakim kolwiek edytorem nie zmienia w zawartosci plików.

Tak na "czuja"... Sa uzywane i zmieniane przez procesy systemowe. Nie pytaj jakie, bo nie wiem, ale ogólnie wszystko co w /sys nie powinno byc - imho - recznie edytowane.

 

[EDIT]

Zrobilem test u siebie i uzyskalem potwierdzenie moich podejrzen. Po zmianie przy próbie zapisu:

"/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq"
WARNING: The file has been changed since reading it!!!
Do you really want to write to it (y/n)?

Tzn. ze "cos" pilnuje zeby wartosc nie zostala zmieniona

Byc moze skuteczne byloby edytowanie w trybie single-user lub rescue.

Odnośnik do komentarza
Udostępnij na innych stronach

WaLdo dobrze Cię naprowadził, zbootuj jakąś dystrybucję LiveCD (Fedora Live CD), zamontuj wolumin na którym znajduje się katalog /sys i wyedytuj ten plik (najprawdopodobniej będziesz miał możliwość wyedytowania tego pliku ale po zalogowaniu się na roota, dla którego nie jest wymagane hasło). Po tej czynności zrestartuj komputer, już nie bootując wersji live. Być moze wartości powrócą do pierwotnych, wtedy powtórzyłbym operację i dodatkowo po zmianie wartości nadałbym atrybut tylko do odczytu bez prawa do zapisu czyli "chmod 444 plik".

 

P.S. jeśli będą jakieś skutki uboczne np komputer się nie uruchomi to reklamacji nie przyjmuje

Odnośnik do komentarza
Udostępnij na innych stronach

To tez sprawdzalem z pomoca CDlinux.pl ale z perspektywy czasu widze, ze zrobilem tam kilka bledów.

Sprawdze to.

Na stronie http://wiki.maemo.org/Kernel_Power#Installation_of_the_stable_kernel_from_extras jest ciekawy tekst

ale ja wymiekam, na razie to dla mnie za madre.

 

FC4B Napisal:

P.S. jesli beda jakies skutki uboczne np komputer sie nie uruchomi to reklamacji nie przyjmuje

 

Daczego?

 

Pozdrawiam.

ALvarez

Edytowane przez WalDo
zmiana znaczników. przy krótkich listingach prosze korzystać z [code]...[/code] zamiast [codebox]...[/codebox]. Cytaty umieszaj w [quote]...[/quote]]
Odnośnik do komentarza
Udostępnij na innych stronach

Bo to sa katalogi systemowe, których nie powinno sie modyfikowac. Napisales, ze na pozostalych dystrybucjach byla równiez czestotliwosc 1GHz, w dodatku tak bylo nawet na Windowsie XP.

Jesli na kazdym systemie bylo tak samo to znaczy, ze musi tak byc, a zadna modyfikacja nie przyspieszy Ci procesora jesli to faktycznie jest statycznie ustawiona czestotliwosc.

pokaze jeszcze polecenie

cat /proc/cpuinfo

tylko daj w znacznikach [ code ] [ /code ]

Raz zaobserwowales zmiane na 1.33, a wg mnie to jest to co bylo juz opisywane w tym temacie...

Odnośnik do komentarza
Udostępnij na innych stronach

Witam!

 

cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Core(TM)2 CPU         T7200  @ 2.00GHz
stepping        : 6
microcode       : 0xd1
cpu MHz         : 1000.000
cache size      : 4096 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
apicid          : 0
initial apicid  : 0
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm lahf_lm dts tpr_shadow
bogomips        : 3994.81
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor       : 1
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Core(TM)2 CPU         T7200  @ 2.00GHz
stepping        : 6
microcode       : 0xd1
cpu MHz         : 1000.000
cache size      : 4096 KB
physical id     : 0
siblings        : 2
core id         : 1
cpu cores       : 2
apicid          : 1
initial apicid  : 1
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm lahf_lm dts tpr_shadow
bogomips        : 3994.20
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

 

a dmidecode pokazuje tak:

 

Processor Information
       Socket Designation: Microprocessor
       Type: Central Processor
       Family: Pentium M
       Manufacturer: Intel
       ID: F6 06 00 00 FF FB EB BF
       Signature: Type 0, Family 6, Model 15, Stepping 6
       Flags:
               FPU (Floating-point unit on-chip)
               VME (Virtual mode extension)
               DE (Debugging extension)
               PSE (Page size extension)
               TSC (Time stamp counter)
               MSR (Model specific registers)
               PAE (Physical address extension)
               MCE (Machine check exception)
               CX8 (CMPXCHG8 instruction supported)
               APIC (On-chip APIC hardware supported)
               SEP (Fast system call)
               MTRR (Memory type range registers)
               PGE (Page global enable)
               MCA (Machine check architecture)
               CMOV (Conditional move instruction supported)
               PAT (Page attribute table)
               PSE-36 (36-bit page size extension)
               CLFSH (CLFLUSH instruction supported)
               DS (Debug store)
               ACPI (ACPI supported)
               MMX (MMX technology supported)
               FXSR (FXSAVE and FXSTOR instructions supported)
               SSE (Streaming SIMD extensions)
               SSE2 (Streaming SIMD extensions 2)
               SS (Self-snoop)
               HTT (Multi-threading)
               TM (Thermal monitor supported)
               PBE (Pending break enabled)
       Version: Not Specified
       Voltage: 3.3 V
       External Clock: 166 MHz
       Max Speed: 2000 MHz
       [font="Arial Black"]Current Speed: 2000 MHz[/font]
       Status: Populated, Enabled
       Upgrade: None
       L1 Cache Handle: 0x0700
       L2 Cache Handle: 0x0701
       L3 Cache Handle: Not Provided
       Serial Number: Not Specified
       Asset Tag: Not Specified
       Part Number: Not Specified
       Core Count: 2
       Core Enabled: 2
       Thread Count: 2
       Characteristics:
               64-bit capable

Procesor jest generalnie 2GHz

Odnośnik do komentarza
Udostępnij na innych stronach

Byc może skuteczne byłoby edytowanie w trybie single-user lub rescue.

 

Nie. Filesystemy 'sys' i 'proc' to filesystemy wirtualne z ustawieniami systemu lub wartościami read-only. Są tworzona podczas montowania (mount -o proc /proc np.)

 

Jeśli chcesz coś zmieniać w sys, to masz od tego plik /etc/sysctl.conf

Odnośnik do komentarza
Udostępnij na innych stronach

Witam!

Możliwe, że jest to jakiś bug związany z odczytem z Biosu ograniczeń.

Spróbuj z terminala:

#echo 1 > /sys/module/processor/parameters/ignore_ppc

Docelowo możesz dopisać do parametrów jądra:

processor.ignore_ppc=1

Pozdrawiam,

andrew

Odnośnik do komentarza
Udostępnij na innych stronach

Moze uda sie spróbowac poprzez edycje pliku:

/etc/sysconfig/cpupower

i np zmienic z

CPUPOWER_START_OPTS="frequency-set -g performance"

na

CPUPOWER_START_OPTS="frequency-set -g conservative"

albo

CPUPOWER_START_OPTS="frequency-set --max 2000000"

Kiedys byla jakas graficzna nakladka na wylaczanie tego skalowania i edytowania tego pliku, ale nie pamietam jak sie nazywala. Byc moze edytowalo sie po wlaczeniu monitora systemu w gnome. Na pewno mozna wiecej opcji tutaj ustawic i isc ta droga, jesli to sie nie uda to musisz dokladnie przejrzec ustawienia w swoim biosie.

 

P.S. Brniemy w temat wylaczania skalowania czestotliwosci Twojego procesora, bo jak wykazaly pliki on pracuje na 2GHz. Spróbuj jeszcze raz obciazyc go, poszukaj na google jakis metod, aby uruchomic kilka procesów tak aby bardzo mocno zostal obciazony, wtedy podczas ich pracy sprawdz jeszcze raz zawartosc info o cpu. Wlacz jeszcze monitor systemu, albo zainstaluj programy w stylu conky aby obserowac prace procesora. Przyznam szczerze, ze kiedys mialem podobny problem, gdy pisalem program który musial duzo obliczac i przerazilem sie, gdy podczas uruchomienia pracowal na czestotliwosci ok. 1200MHz, a zalezalo mi wtedy na jak najwiekszej mocy obliczeniowej.

Odnośnik do komentarza
Udostępnij na innych stronach

Nie. Filesystemy 'sys' i 'proc' to filesystemy wirtualne z ustawieniami systemu lub wartosciami read-only. Sa tworzona podczas montowania (mount -o proc /proc np.)

Oj, ale wstyd <_< /proc to pamietam a o /sys juz zapomnialem ;)
Odnośnik do komentarza
Udostępnij na innych stronach

Witam!

ad. andrew - niestety nie pomoglo, wartosc ignore_ppc zmiemia sie z 0 na 1 ale efektu nie ma.

 

ad, FC4B - nie mam pliku cpupower, mam cpuspeed gdzie wartosc f max jest 2000000 a f min 1000000.

co do obciazenia CPU na gkrellm mam 2 procesory i bywaja obciazone na max. co równiez pokazuja wykresy na monitorze systemu.

Mialem tez zainstalowane conky i przy obciazeniu 90-95% i f pozostaje bez zmian.

Mam pewne porównanie z drugim pc z dwurdzeniowym Athlonem gdzie wystarczy uruchomic chromium i na kilka sekund mam skok z 1 GHz na 2,5 GHz (podobnie jak u WalDo) i pojawiaja sie f posrednie a jest to starsza wersja tego samego programu.

 

ad morsik - /etc/sysctl.conf: zupelnie nie mam pojecia co tu móglbym zmienic.

Znalazlem dwie linie które moze maja znaczenie

kernel.sched_rt_period_us=1000000

i

dev.hpet.max._user-freq=64

a nic innego dot. skalowania czestotliwosci nie znalazlem.

 

Powoli zaczynac dochodzic do wniosku, ze bede musial to polubic.

 

Pozdrawiam.

ALvarez

Odnośnik do komentarza
Udostępnij na innych stronach

  • 5 months later...

Witam!

 

Watek chyba mozna juz ostudzic.

Laptop przejechal 100 km. samochodem i wrócilo skalowanie czestotliwosci.

Prawdpodobnie przyczyna prozaiczna-cos czasami nie kontaktuje.

Jest mozliwe, ze jest to na styku podstawka-procesor.

Procesor ma dwie (lub trzy) nózki odpowiedzialne za skalowanie.

Na dzien dzisiejszy skalowanie dziala OK.

 

Dziekuje wszystkim za zaangazowanie i pomoc w rozwiazywaniu problemu

Jak sie znowu pojawi walne mlotkiem (nie za mocno)

 

Pozdrawiam

ALvarez

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...