abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 03:33 | IT novinky

    Do prodeje jde tichá bezdrátová herní myš Logitech PRO X2 SUPERSTRIKE s analogovými spínači s haptickou odezvou (HITS, Haptic Inductive Trigger System). Cena je 4 459 Kč.

    Ladislav Hagara | Komentářů: 4
    7.2. 21:00 | Zajímavý projekt

    Microsoft na GitHubu zveřejnil zdrojový kód projektu LiteBox, jedná se o 'knihovní operační systém' (library OS) zaměřený na bezpečnost, využívající systémovou architekturu LVBS k ochraně jádra před útoky z uživatelského prostoru. LiteBox je napsán v Rustu a uvolněný pod licencí MIT. Projekt je teprve v rané fázi vývoje.

    NUKE GAZA! 🎆 | Komentářů: 1
    7.2. 16:11 | Zajímavý software

    BreezyBox je open-source shell a virtuální terminál pro populární jednočip ESP32. Nabízí základní unixové příkazy, sledování aktuálního pracovního adresáře (CWD), jednoduchý instalátor a spouštěč aplikací v podobě ELF binárních souborů, zabudovaný HTTP server nebo třeba ovládání WiFi - ukázka použití coby 'malého osobního počítače'. Ačkoliv je BreezyBox inspirovaný BusyBoxem, oproti němu má tento projekt několik externích závislostí, zejména na ESP-IDF SDK. BreezyBox je dostupný pod licencí MIT.

    NUKE GAZA! 🎆 | Komentářů: 0
    7.2. 16:00 | Humor

    Byl představen cross-assembler xa.sh, napsaný čistě v Bourne shell skriptu. Tento nástroj umožňuje zpracovávat assemblerový kód pro Intel 8080, přičemž je možné snadno přidat podporu i pro další architektury, například 6502 a 6809. Skript využívá pouze různé běžné unixové příkazy jako jsou awk, sed nebo printf. Skript si lze stáhnout z GitHubového repozitáře projektu.

    NUKE GAZA! 🎆 | Komentářů: 6
    6.2. 17:22 | IT novinky

    Byla představena nová verze modelu Claude Opus 4.6 od společnosti Anthropic. Jako demonstraci možností Anthropic využil 16 agentů Claude Opus 4.6 k vytvoření kompilátoru jazyka C, napsaného v programovacím jazyce Rust. Claude pracoval téměř autonomně, projekt trval zhruba dva týdny a náklady činily přibližně 20 000 dolarů. Výsledkem je fungující kompilátor o 100 000 řádcích kódu, jehož zdrojový kód je volně dostupný na GitHubu pod licencí Creative Commons.

    NUKE GAZA! 🎆 | Komentářů: 18
    6.2. 16:44 | Komunita

    Kultovní britský seriál The IT Crowd (Ajťáci) oslavil dvacáté výročí svého prvního vysílání. Sitcom o dvou sociálně nemotorných pracovnících a jejich nadřízené zaujal diváky svým humorem a ikonickými hláškami. Seriál, který debutoval v roce 2006, si i po dvou dekádách udržuje silnou fanouškovskou základnu a pravidelně se objevuje v seznamech nejlepších komedií své doby. Nedávné zatčení autora seriálu Grahama Linehana za hatecrime však vyvolává otázku, jestli by tento sitcom v současné Velké Británii vůbec vznikl.

    NUKE GAZA! 🎆 | Komentářů: 10
    6.2. 13:33 | IT novinky

    Společnost JetBrains oznámila, že počínaje verzí 2026.1 budou IDE založená na IntelliJ ve výchozím nastavení používat Wayland.

    Ladislav Hagara | Komentářů: 4
    6.2. 11:22 | IT novinky

    Společnost SpaceX amerického miliardáře Elona Muska podala žádost o vypuštění jednoho milionu satelitů na oběžnou dráhu kolem Země, odkud by pomohly zajistit provoz umělé inteligence (AI) a zároveň šetřily pozemské zdroje. Zatím se ale neví, kdy by se tak mělo stát. V žádosti Federální komisi pro spoje (FCC) se píše, že orbitální datová centra jsou nejúspornějším a energeticky nejúčinnějším způsobem, jak uspokojit rostoucí poptávku po

    … více »
    Ladislav Hagara | Komentářů: 28
    6.2. 11:11 | Nová verze

    Byla vydána nová verze 2.53.0 distribuovaného systému správy verzí Git. Přispělo 70 vývojářů, z toho 21 nových. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    6.2. 04:22 | Komunita

    Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 216. sraz, který proběhne v pátek 20. února od 18:00 v Red Hat Labu (místnost Q304) na Fakultě informačních technologií VUT v Brně na ulici Božetěchova 1/2. Tématem srazu bude komunitní komunikační síť MeshCore. Jindřich Skácel představí, co je to MeshCore, předvede nejrůznější klientské zařízení a ukáže, jak v praxi vypadá nasazení vlastního repeateru.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (19%)
     (6%)
     (0%)
     (10%)
     (26%)
     (3%)
     (4%)
     (2%)
     (12%)
     (29%)
    Celkem 809 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    Dotaz: ondemand, sampling_rate, rychlost změny frekvence

    10.5.2007 00:43 Jan Martinek | skóre: 43 | blog: johny | Brno
    ondemand, sampling_rate, rychlost změny frekvence
    Přečteno: 680×
    Zdravím, svým dotazem navazuji na tuto diskusi o frekvenci procesoru
    http://www.abclinuxu.cz/forum/show/179537
    která je ale v této chvíli už překošatělá.
    Zcela jistě má smysl regulovat frekvenci procesoru i na desktopu - za rok provozu jsou náklady na elektřinu srovnatelné s pořizovací cenou procesoru ( a to mluvím pouze o penězích).
    Druhou stránkou věci je to, že se frekvence procesoru musí zvýšit dostatečně rychle při zvýšené zátěži, jinak se počítač jeví líný. Jestliže mám zapnutý ondemand governor:
    echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
    
    a jestliže nastavím, aby se frekvence zvýšila už při 20% zátěži
    echo 20 > /sys/devices/system/cpu/cpu0/cpufreq/ondemand/up_threshold
    
    a jestliže nechám samplovat zátěž co nejčastěji
    echo $(cat /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate_min) > \
    /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate
    
    tak to stejně není dostatečné, protože nejnižší hodnota pro samplovací periodu je 620000 mikrosekund, tedy něco přes půl sekundy. A to už je bohužel poznat. Mohu názorně demonstrovat:
    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    import time
    
    fncur = '/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq'
    fnmin = '/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq'
    fnmax = '/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq'
    
    class CPUgov:
        def __init__(self):
            self.minfreq = self.readintfromfile(fnmin)
            self.maxfreq = self.readintfromfile(fnmax)
    
        def readintfromfile(self, fn):
            return int(file(fn).read())
    
        def getfreq(self):
            return self.readintfromfile(fncur)
    
        def waitforfall(self):
            stamp = time.time()
            while self.getfreq() != self.minfreq:
                time.sleep(0.01)
            return time.time() - stamp
    
        def waitforrise(self):
            stamp = time.time()
            while self.getfreq() != self.maxfreq:
                pass
            return time.time() - stamp
    
    cpu = CPUgov()
    while True:
        print 'rise:', cpu.waitforrise()
        print 'fall:', cpu.waitforfall()
    
    Frekvence se skutečně zvýší až po cca 0.6 sekundách, což je pro interaktivní práci (např. přepínání mezi okny, renderování html) příliš dlouho. Takže se chci zeptat, jak snížit hodnotu v
    /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate_min
    Díky

    Odpovědi

    10.5.2007 08:39 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: ondemand, sampling_rate, rychlost změny frekvence
    Zjistil jsem další věc. Na jiném počítači (notebook, Mobile AMD Athlon(tm) XP 2800+) je hodnota v
    /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate_min
    pouze 100000, tedy desetina sekundy. A skutečně se to velmi projeví v ochotě zvyšovat frekvenci. Ale přece to nemůže záviset na hardwaru. Nebo ano?
    Josef Kufner avatar 10.5.2007 09:20 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: ondemand, sampling_rate, rychlost změny frekvence
    Zkusil bych:
    echo "požadovaná hodnota" > /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate_min
    Přičemž ona požadovaná hodnota bude ze .../scaling_available_frequencies.
    Hello world ! Segmentation fault (core dumped)
    10.5.2007 09:52 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: ondemand, sampling_rate, rychlost změny frekvence
    No, mě šlo o něco trochu jiného. Frekvence procesoru se přepíná mezi správnými hodnotami (to měnit nemusím), ale governor reaguje příliš pozdě na změnu zátěže.
    Reakční doba se sice dá nastavit v souboru
    /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate
    ale nejnižší nastavitelná hodnota je sampling_rate_min. A ta je dle mého názoru příliš vysoká.
    Josef Kufner avatar 10.5.2007 20:43 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: ondemand, sampling_rate, rychlost změny frekvence
    No vždyť.
    Hello world ! Segmentation fault (core dumped)
    10.5.2007 21:14 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: ondemand, sampling_rate, rychlost změny frekvence
    No, zapomněl jsem podotknout hlavní kámen úrazu - že sampling_rate_min je read-only soubor.
    Josef Kufner avatar 10.5.2007 21:56 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: ondemand, sampling_rate, rychlost změny frekvence
    Aha, tak to by mohl být trošku problém. Toho jsem si nějak nevšiml ;-)
    Hello world ! Segmentation fault (core dumped)
    10.5.2007 21:44 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: ondemand, sampling_rate, rychlost změny frekvence
    Aha, tady si toho taky někdo všiml (a snad to popsal líp než já). http://groups.google.com/group/linux.debian.bugs.dist/browse_thread/thread/6b4c5005900a9f08/acc0776dd0b9c08c?lnk=raot
    nekompilujete zrovna někdo nové jádro, že byste zkusili něco změnit v cpufreq_ondemand.c? Myslím, že tahle věc musí vadit všem, co používají jaderný ondemand governor.
    10.5.2007 23:21 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: ondemand, sampling_rate, rychlost změny frekvence
    Jaká je minimální frekvence, kterou si ten procesor umí nastavit? Zkusil jsem ten tvůj skript a frekvence se mi přepne až po 1.2s, přesto žádné výrazné zpomalení nepozoruju, všechny programy reagují svižně. (AMD Athlon X2, minimální frekvence je 1GHz)
    Quando omni flunkus moritati
    11.5.2007 08:51 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: ondemand, sampling_rate, rychlost změny frekvence
    Až za 1.2 sekundy? Tak to je ještě horší než u mě (mám 0.62). Jasně, je to hnidopišství, 1GHz je pořád ještě dost slušná mašina. Ale když něco dělám v inkscapu, gimpu, prohlížeči apod. tak se frekvence mnohdy přepne s křížkem po funuse a přijde mi to jako škoda.
    11.5.2007 00:06 Lu-Tze | skóre: 15 | blog: Lu-Tzeho blog
    Rozbalit Rozbalit vše Re: ondemand, sampling_rate, rychlost změny frekvence
    A nebylo by lepší, kdyby to jelo na max po celou dobu, co počítač používáš, a teprve když odejdeš, tak aby nastoupilo řízení frekvence? Se spuštěním screensaveru zapnout řízení, s vypnutím vypnout, třeba.
    11.5.2007 09:03 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: ondemand, sampling_rate, rychlost změny frekvence
    To by bylo spíš obcházení problému. Navíc se zdá, že náprava nebude složitá. V jádře je tohle:
    static unsigned int def_sampling_rate;
    #define MIN_SAMPLING_RATE_RATIO                 (2)
    /* for correct statistics, we need at least 10 ticks between each measure */
    #define MIN_STAT_SAMPLING_RATE                  \
                            (MIN_SAMPLING_RATE_RATIO * jiffies_to_usecs(10))
    #define MIN_SAMPLING_RATE                       \
                            (def_sampling_rate / MIN_SAMPLING_RATE_RATIO)
    #define MAX_SAMPLING_RATE                       (500 * def_sampling_rate)
    #define DEF_SAMPLING_RATE_LATENCY_MULTIPLIER    (1000)
    #define TRANSITION_LATENCY_LIMIT                (10 * 1000)
    Zkusím si s tím trochu pohrát. Mám (na druhém počítači) vyzkoušeno, že když ondemand zareaguje za 0.1 sekundy, tak je to už úplně v pohodě a nepoznám žádnou prodlevu.
    11.5.2007 10:20 Lu-Tze | skóre: 15 | blog: Lu-Tzeho blog
    Rozbalit Rozbalit vše Re: ondemand, sampling_rate, rychlost změny frekvence
    Tak mě se zdá, že při tvých podmínkách by mohlo docházet ke změně frekvence docela často. Třeba při každém načtení webové stránky, zobrazení další stránky v pdf dokumentu atd. Nevím, jestli vysoká frekvence zmeny frekvence cpu nevadí... A docela by mě zajímalo, kolik času při tomhle nastavení pojede procesor stejně na max. A vyšší frekvence vzorkování to taky určitě trošinku ovlivní :-)
    11.5.2007 11:09 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: ondemand, sampling_rate, rychlost změny frekvence
    Chci ji měnit (nejvýše) desetkrát za sekundu, což mi vůbec nepřijde často. Vzhledem k tomu, že P-state transition latency bývá 10 až 100 mikrosekund, tak jsem naprosto klidný. Viz
    http://softwarecommunity.intel.com/isn/Community/en-US/forums/30234265/ShowThread.aspx
    Jestli vyšší frekvence vzorkování bude mít na něco vliv, to pochybuju. Schválně zkus číst 10x za sekundu soubor /proc/stat. Pro systém je to zcela neměřitelná zátěž.
    A kolik procent času stráví procesor na své max. frekvenci? Taky by mě to zajímalo. Jdu měřit:
    #!/usr/bin/python
    # -*- coding:utf-8 -*-
    import time
    
    fncur = '/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq'
    fnmin = '/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq'
    fnmax = '/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq'
    
    class CPUgov:
        def __init__(self):
            self.minfreq = self.readintfromfile(fnmin)
            self.maxfreq = self.readintfromfile(fnmax)
            self.samples_high = 0
            self.samples_low = 0
    
        def readintfromfile(self, fn):
            return int(file(fn).read())
    
        def getfreq(self):
            return self.readintfromfile(fncur)
    
        def measure(self):
            freq = self.getfreq()
            if freq == self.minfreq:
                self.samples_low += 1
            else:
                self.samples_high += 1
    
    cpu = CPUgov()
    while True:
        cpu.measure()
        N100 = (cpu.samples_high + cpu.samples_low) * 0.01
        print 'high: %5.2f%%  low:%5.2f%%' %(cpu.samples_high / N100,
                                             cpu.samples_low / N100)
        time.sleep(1)
    
    Zkuste tohle nechat běžet hodinu, dvě, tři ... den, dva, tři ...

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.