abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 13:11 | Nová verze

    Coppwr, tj. GUI nástroj pro nízkoúrovňové ovládání PipeWire, byl vydán v nové verzi 1.6.0. Zdrojové kódy jsou k dispozici na GitHubu. Instalovat lze také z Flathubu.

    Ladislav Hagara | Komentářů: 0
    2.5. 22:33 | Nová verze

    Byla vydána dubnová aktualizace aneb nová verze 1.89 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Vypíchnout lze, že v terminálu lze nově povolit vkládání kopírovaného textu stisknutím středního tlačítka myši. Ve verzi 1.89 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 14
    2.5. 21:22 | Nová verze

    Proton, tj. fork Wine integrovaný v Steam Play a umožňující v Linuxu přímo ze Steamu hrát hry určené pouze pro Windows, byl vydán ve verzi 9.0-1 (𝕏). Přehled novinek se seznamem nově podporovaných her na GitHubu. Aktuální přehled her pro Windows běžících díky Protonu také na Linuxu na stránkách ProtonDB.

    Ladislav Hagara | Komentářů: 2
    2.5. 19:33 | Nová verze

    Byla vydána verze 1.78.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání na GitHubu. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    2.5. 11:22 | Bezpečnostní upozornění

    Služba Dropbox Sign (původně HelloSign) pro elektronické podepisování smluv byla hacknuta.

    Ladislav Hagara | Komentářů: 2
    2.5. 11:00 | Nová verze

    Byla vydána nová major verze 8.0 textového editoru GNU nano (Wikipedie). Podrobný přehled novinek a oprav v oznámení v diskusním listu info-nano nebo v souboru ChangeLog na Savannah. Volbou --modernbindings (-/) lze povolit "moderní" klávesové zkratky: ^C kopírování, ^V vložení, ^Z vrácení zpět, … Tato volba je aktivována také pokud binárka s nano nebo link na ni začíná písmenem "e".

    Ladislav Hagara | Komentářů: 3
    1.5. 23:22 | IT novinky

    Před 60 lety, 1. května 1964, byl představen programovací jazyk BASIC (Beginners' All-purpose Symbolic Instruction Code).

    Ladislav Hagara | Komentářů: 21
    1.5. 22:22 | Nová verze

    Byla vydána nová verze 12.0 minimalistické linuxové distribuce (JeOS, Just enough Operating System) pro Kodi (dříve XBMC) a multimediálního centra LibreELEC (Libre Embedded Linux Entertainment Center). Jedná se o fork linuxové distribuce OpenELEC (Open Embedded Linux Entertainment Center). LibreELEC 12.0 přichází s Kodi 21.0 "Omega".

    Ladislav Hagara | Komentářů: 0
    1.5. 12:55 | Nová verze

    Microsoft vydal novou velkou aktualizaci 2404.23 v září 2019 pod licencí SIL Open Font License (OFL) zveřejněné rodiny písma Cascadia Code pro zobrazování textu v emulátorech terminálu a vývojových prostředích.

    Ladislav Hagara | Komentářů: 0
    1.5. 05:33 | Nová verze

    OpenTofu, tj. svobodný a otevřený fork Terraformu vzniknuvší jako reakce na přelicencování Terraformu z MPL na BSL (Business Source License) společností HashiCorp, bylo vydáno ve verzi 1.7.0. Přehled novinek v aktualizované dokumentaci. Vypíchnout lze State encryption.

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (14%)
     (25%)
     (39%)
     (21%)
    Celkem 28 hlasů
     Komentářů: 7, poslední včera 22:24
    Rozcestník

    Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě

    2.5.2008 13:25 | Přečteno: 1371× | Software | poslední úprava: 2.5.2008 14:49

    Jakožto dlouholetý uživatel Gentoo jsem několikrát odolával pokušení vykašlat se na poučku, která je vidět na každém kroku, a to že není dobrý nápad dát do CFLAGS -O3. Při psaní úlohy do předmětu počítačové fyziky jsem vlastně omylem narazil na to, že je velmi jednoduché uvědomit si, že to opravdu není dobrý nápad.

    Psal jsem jakousi iterační metodu řešení čehosi a byl jsem líný čekat na výsledek, tak jsem si řekl, že od čeho má kompilátor optimalizace a tak si řeknu o rychlost vcuku letu a sáhnu po -O3. Jaké bylo mé překvapení, když hned po několika málo stech iterací se výsledek evidentně odtahoval od správného řešení více a více.

    Jelikož onen algoritmus byl poněkud komplikovaný, říkal jsem si, že chyba nemusí být na straně kompilátoru, ale mé, a tak jsem si napsal to nejjednodušší, co mne v tu chvíli napadlo, a to integrování přes lichoběžníčky. Zvolil jsem integrál funkce sin(x) od nuly do pí, jelikož je to super pěkná fce a analytické řešení tohoto integrálu je opravdu triviální.

    Zkusil jsem nechat počítat tento integrál s různými délkami kroku (záporné mocniny 10) s různými stupněmi optimalizace a porovnat výsledné chyby. Zatímco s přepínači -g, -O1 i -O2 dává program totožné výsledky jako bez přepínačů a chyba se chová dle očekávání — nejdříve vcelku prudce klesne a když se dostane do popředí zaokrouhlovací chyba, ak zase začne růst, tak s přepínačem -O3 vcelku systematicky roste překvapivě vysoko.

    Pro ilustraci přikládám testovací prográmek ve stavu, jenž jsem použil, a graf chyby od analytického řešení (v logaritmické škále). Použitá verze gcc byla gcc version 4.1.2 (Gentoo 4.1.2 p1.0.2).

    Už nikdy nezapomenu na -Wall.Už nikdy nezapomenu na -Wall.Už nikdy nezapomenu na -Wall.Už nikdy nezapomenu na -Wall.

           

    Hodnocení: 80 %

            špatnédobré        

    Obrázky

    Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě, obrázek 1

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

    Komentáře

    Vložit další komentář

    2.5.2008 13:27 Petr "Glubo" Sýkora | skóre: 21 | blog: Glubnik
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    Příloha:
    Nějak jsem nepřišel, jak připojit neobrázkovou přílohu přímo k blogu...
    „O mrtvých jen v dobrém." „Pojďme se bavit o Stalinovi."
    Luboš Doležel (Doli) avatar 2.5.2008 13:56 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    Zajímalo by mě, jestli je to vhodné na bugreport. Podle mě -O3 nemá znamenat "počítej špatně".
    2.5.2008 14:05 Petr "Glubo" Sýkora | skóre: 21 | blog: Glubnik
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    O tom jsem také přemýšlel, ale v dané oblasti kompilátorů a jejich optimalizátorů se vyznám jenom na úrovni, kterou jsem tu prezentoval, takže vlastně nevím, zda je to na bugreport, nebo ne...
    „O mrtvých jen v dobrém." „Pojďme se bavit o Stalinovi."
    2.5.2008 13:59 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    Není gcc 4.1 nějak stará verze? (A ještě k tomu na Gentoo, kde vychází nové verze dřív, než je někdo naprogramuje? ;-))

    Btw. k dokonalosti zápisku chybí ještě informace o tom, proč k té chybě dojde...
    Quando omni flunkus moritati
    2.5.2008 14:09 Petr "Glubo" Sýkora | skóre: 21 | blog: Glubnik
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    Je to nejnovější "stable" verze ve stromu, novější jsou z nějakého důvodu označené za masked (včerejší stav). :-)
    „O mrtvých jen v dobrém." „Pojďme se bavit o Stalinovi."
    Jan Drábek avatar 2.5.2008 14:22 Jan Drábek | skóre: 41 | blog: Tartar | Brno
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    v testingu je 4.2.3, GCC 4.3 je hardmasked těch balíčků co pak nejdou zkompilovat je obrovské množství...
    01010010 01000101 01010000 01101100 01001001 00110010 01000100 01100101 01010110
    2.5.2008 14:07 Kvakor
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    Neimplikuje -O3 nahodou take --fast-math? To muze udelat v podobnych vypoctech peknou paseku.
    frEon avatar 2.5.2008 14:20 frEon | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    ne
    Talking about music is like dancing to architecture.
    2.5.2008 14:23 Petr "Glubo" Sýkora | skóre: 21 | blog: Glubnik
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    Příloha:
    Nevím, jak to ověřit, ale dle manuálové stránky u -O3 o tom nepíší a u --fast-math píší, že by ho neměl implikovat žádný -O, ale když jsem zkusil zkompilovat s pouze --fast-math výsledek byl jiný, než s -O3; výsledek s -O3 a --fast-math byl totožný s pouze -O3 (viz příloha).
    „O mrtvých jen v dobrém." „Pojďme se bavit o Stalinovi."
    stativ avatar 2.5.2008 14:29 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    Zkus to zkompilovat ještě s parametrem -Wstrict-overflow.
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    2.5.2008 14:30 Ketling | skóre: 8
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    -	double retval;
    +	double retval = 0;
    Nechápem prečo ste ignorovali varovanie kompilátora.
    2.5.2008 14:44 Petr "Glubo" Sýkora | skóre: 21 | blog: Glubnik
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    Příloha:
    Jaj, toto bolí. Sypu si popel na hlavu. Zapomněl jsem na -wall. Asi půjdu skočit z mostu :-) Po této opravě vše dává vcelku stejné výsledky.
    „O mrtvých jen v dobrém." „Pojďme se bavit o Stalinovi."
    xxx avatar 3.5.2008 00:01 xxx | skóre: 42 | blog: Na Kafíčko
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    Ty kompilujes bez -Wall? To mate na tom matfyzu nejake moc tolerantni vyucujici. Nebo se predpoklada, ze si pro kazdy program spocitate jeho korektnost.
    Please rise for the Futurama theme song.
    3.5.2008 16:51 Petr "Glubo" Sýkora | skóre: 21 | blog: Glubnik
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    Normálně -Wall používám, ale nějak mi prostě vypadlo... A ano, v tomdle předmětu jde o velmi tolerantní vyučující, ono je to klasický předpředmět. Btw. nejde nějak jednoduše globálně změnit chování gcc, aby implicitně používalo -Wall, pokud mu nebude řečeno jinak?
    „O mrtvých jen v dobrém." „Pojďme se bavit o Stalinovi."
    Jan Drábek avatar 3.5.2008 17:05 Jan Drábek | skóre: 41 | blog: Tartar | Brno
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    nastavení globální proměnné CFLAGS? (střílím od pasu, v gentoo k tomu slouží /etc/make.conf)
    01010010 01000101 01010000 01101100 01001001 00110010 01000100 01100101 01010110
    4.5.2008 00:30 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    Proměnná CFLAGS nemá na chování gcc jako takového žádný vliv. To je záležitost make nebo makefilů.
    xxx avatar 5.5.2008 09:05 xxx | skóre: 42 | blog: Na Kafíčko
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    No ja na to pouzivam jeden putovni Makefile.
    Please rise for the Futurama theme song.
    3.5.2008 00:33 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    Vida, nakonec jste sice dospěl k jinému poučení, ale neméně užitečnému… :-)
    7.5.2008 12:26 latrína.
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    uh svoje gentoo stavím za použití -O3, zatím všechno funguje jak má, na žádný problém sem nenarazil. mám se něčeho obávat?:)
    7.5.2008 15:35 Petr "Glubo" Sýkora | skóre: 21 | blog: Glubnik
    Rozbalit Rozbalit vše Re: Ukázka, že není dobrý nápad používat O3 bezmyšlenkovitě
    V zásadě každého Warningu, pakliže přidáš -Wall do CFLAGS :-) A teď vážně... No -O3 je prostě více náchylné na projevení nějaké chyby, která se při nižších -O neprojeví (viz třeba zde prezentované nevynulování používané proměnné). Takže s -O3 je větší šance, že se u tebe projeví více chyb.
    „O mrtvých jen v dobrém." „Pojďme se bavit o Stalinovi."

    Založit nové vláknoNahoru

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