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 14:22 | Zajímavý projekt

    Jack Dorsey představil (𝕏) open source týmovou komunikační platformu Buzz (GitHub) s cílem snížit závislost na Slacku a GitHubu.

    Ladislav Hagara | Komentářů: 13
    23.7. 23:00 | Nová verze

    Poštovní klient Thunderbird byl vydán v nové verzi 153 s kódovým názvem Meadow. Jedná se o ESR (Extended Support Release) vydání. Přehled novinek v poznámkách k vydání. Vylepšuje OAuth. Thundermail lze používat bez instalace doplňku.

    Ladislav Hagara | Komentářů: 0
    23.7. 22:22 | Zajímavý článek

    AI tento rok naplno vtrhla do vývoje softwaru a výrazně ovlivňuje také open source projekty. Jiří Eischmann v příspěvku Jak mění AI open source na svém blogu rozebírá několik trendů, které v open source v poslední době v souvislosti s AI pozoruje, a jak tyto trendy svět otevřeného softwaru mění (Inflace projektů, Zahlcení kontroly, Klesající motivace zveřejňovat kód).

    Ladislav Hagara | Komentářů: 15
    23.7. 22:00 | IT novinky

    Evropská komise (EK) vyměřila americké internetové společnosti Google pokutu 890 milionů eur (21,5 miliardy Kč) za porušení unijního nařízení o digitálních trzích (DMA). Firma se podle unijní exekutivy provinila tím, že ve vyhledávači Google Search upřednostňovala vlastní služby a že podnikům ukládala omezení, která jim bránila nasměrovat spotřebitele k alternativním, často levnějším nákupním kanálům na platformě Google Play.

    … více »
    Ladislav Hagara | Komentářů: 2
    22.7. 19:44 | IT novinky

    Samsung na akci Galaxy Unpacked July 2026 (YouTube) představil své nové telefony Galaxy Z Fold8 Ultra, Fold8 a Flip8, hodinky Galaxy Watch Ultra2 a Watch9 a chytré brýle ve spolupráci s Gentle Monster a Warby Parker.

    Ladislav Hagara | Komentářů: 0
    22.7. 16:11 | IT novinky

    Po pěti letech vývoje vyšla česká počítačová hra Scarlet Deer Inn (ProtonDB). Scarlet Deer Inn je vyšívaná temná středověká pohádka. Zatímco život ve zdánlivě obyčejné vesnici se točí kolem běžných povinností a sousedských drbů, v podzemí se skrývají zlověstná tajemství.

    Ladislav Hagara | Komentářů: 2
    22.7. 13:33 | IT novinky

    Představen byl Raspberry Pi Touch Display 2 s uhlopříčkou 10 palců a rozlišením 1200 × 1920 pixelů. Cena je 80 dolarů.

    Ladislav Hagara | Komentářů: 8
    22.7. 13:22 | Komunita

    RPCS3 (Wikipedie), tj. open source emulátor Sony PlayStation 3, snížil minimální požadavky. Nově jsou podporovány starší grafické karty ATI Radeon řady HD 2000, 3000 a 4000 z let 2007 až 2009. Na PC běží už 75 % všech her pro PlayStation 3. V budoucnu bude RPCS3 fungovat bez firmwaru z PS3. V RPCS3 byl implementován systémový modul cellSysmodule (𝕏).

    Ladislav Hagara | Komentářů: 2
    22.7. 11:00 | Zajímavý software

    Vyšel open-source nástroj winetop (MIT) — nativní CLI/TUI pro sledování a ukončování Wine, Proton, Lutris, Heroic a Bottles sezení. Seskupuje procesy podle WINEPREFIX / Steam AppId, umí bezpečně zabít jen hru (včetně Steam reaperu) a nabízí i skriptovatelné příkazy (list, kill, orphans, …). Balíčky jsou mimo jiné na crates.io, Copru (dnf copr enable kovariadam/winetop), PPA ppa:kovariadam/winetop a AUR (winetop-bin).

    kovariadam | Komentářů: 0
    22.7. 02:44 | IT novinky

    Ve spolupráci společností OpenAI a Work Louder byla představena (𝕏) hardwarová klávesnice Codex Micro pro práci s AI agenty. Cena klávesnice je 230 dolarů.

    Ladislav Hagara | Komentářů: 2
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (30%)
     (5%)
     (6%)
     (2%)
     (15%)
     (24%)
    Celkem 2217 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: Nejlepší nastavení GCC

    1.9.2005 16:20 Andrej | skóre: 51 | blog: Republic of Mordor
    Nejlepší nastavení GCC
    Přečteno: 315×

    Potřeboval bych poradit ohledně nastavení GCC pro kompilaci balíčků a jádra.

    Proč nebývá v distribucích defaultně nastavena optimalizace -O3 pro kompilaci balíčků? Napadají mě 3 možné odpovědi, ale netuším, která je správně. :-D

    • Lze ji bez obav nastavit a výsledný kód bude fungovat rychleji.
    • Zrychlení je zanedbatelné a přináší to navíc nějaké (?) nevýhody, kvůli kterým je lepší zůstat u O2.
    • Jde o experimentální věc, binárky můžou být poškozené/nefunkční. Nevyplatí se riskovat.

    Co z toho je pravda?

    O podobných třech možnostech jsem uvažoval ještě u dvou jiných voleb:

    1. Volba "Use register arguments" v nastavení kernelu. (První tři argumenty funkce se předávají v registrech procesoru, tj. opravdu fofrem.)
    2. Volba gcc zvaná -funit-at-a-time popsaná zde takto: Parse the whole compilation unit before starting to produce code. This allows some extra optimizations to take place but consumes more memory.

    Zrovna hodně kompiluju a rád bych proto věděl, co se vyplatí nastavit. Máte s tím někdo bližší zkušenosti? Která ze tří možností je v jednotlivých případech nejblíž pravdě?

    Odpovědi

    1.9.2005 19:53 Marcel Šebek | skóre: 21 | blog: c
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    -funit-at-a-time je defaultně zapnutá u -O2, taže tam není co řešit. Register arguments u kernelu používám a zatím žádné problémy. -O3 bych nastavoval hlavně u kritických aplikací (třeba hry), kde chyba tolik nevadí a rozdíl je poznat.
    Real programmers don't comment their code. If it was hard to write, it should be hard to read.
    1.9.2005 20:18 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC

    Když je rozdíl i subjektivně poznat, to už je dobrý výsledek, který stojí za to. S tím kernelem to zkusím.

    Jenže otázka je, jestli chyba opravdu tolik nevadí. Nerad bych, aby pak práce s mým počítačem byla o nervy a abych se musel pořád jen obávat, kdy to spadne. Jak časté ty chyby můžou být? Je ta volba -O3 oficiální a odzkoušená, nebo je experimentální a nespolehlivá?

    1.9.2005 20:56 #Tom
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    Já mám skoro celej Linux from scratch zkompilovanej s -O3 -fomit-frame-pointer -march=pentium2 -fPIC mimo jádra a glibc a nepadá mi nic.
    2.9.2005 16:46 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC

    Věřím, že například na hodně standardním desktopu všechno stoprocentně funguje. Na speciálnějších konfiguracích je to ale složitější. Já mám Asus M2400N (notebook). Mám na něm Linux už odnepaměti. Funguje mi všechen hardware i suspend.

    Dva dny zpátky jsem si zkompiloval kernel 2.6.13 a vstaly mi vlasy hrůzou. Software suspend z www.suspend2.net, který vždy stoprocentně fungoval, najednou začal blbnout, plivat chybové hlášky a zasekávat systém, ještě k tomu náhodně a když to nejmíň potřebuju. Driver pro modem (slmodem 2.6.10) nezkompiluju ani zázrakem a patche nepomáhají.

    Zkoušel jsem kompilovat jádro s parametry v registrech a fungovalo na první pohled stejně spolehlivě jako bez nich, dokonce o pár sekund rychleji bootovalo. Chyby při uspání se vyskytovaly s přibližně stejnou pravděpodobností. :-( Takže zatím nechávám parametry v registrech.

    Právě výměna jádra mě vedla k dotazu ohledně nastavení gcc - jestli třeba nedělám něco špatně. Možná ale spíš jen předbíhám událostem a měl bych počkat, až budou patche pro kernel, suspend a modem. Přece jen asi není dobré instalovat kernel, který je dva dny po vydání...

    Když to ale vezmu z jiného pohledu, kdybych si ho nenainstaloval já společně se spoustou dalších kaskadérů, kdo by ho potom vyzkoušel? :-D

    2.9.2005 20:55 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    Proč kompiluješ s -fPIC programy? (Knihovny se s ním kompilují automaticky, takže na ty to nemá vliv.) Znám pár důvodů, proč se tím zhroší výkon, ale proto to asi neděláš ;-)
    3.9.2005 12:47 #Tom
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    S -fPIC kompiluju z pohodlnosti všechno, protože knihovny se mi s tím automaticky bohužel nekompilují, někdy dokonce ani tehdy, když to dám do CFLAGS/CPPFLAGS, třeba Qt. Navíc z některých programů rád dělám knihovny - třeba takové xpdf, LPRng nebo Samba. Běh programu se tím snad nezpomalí, řekl bych, že jen jeho spouštění.
    3.9.2005 13:54 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    Právě naopak.

    Qt neinstaluji, takže tu nebudu komentovat. Cokoli, co používá libtool, a to je dnes skoro vše, kompiluje knihovny a moduly s -fPIC (nebo -fpic, na intelu je to jedno). A všechny ostatní knihovny, které nepsal úplný diletant, též.

    Použití -fPIC (-fpic) výrazně zrychluje spouštění a umožňuje sdílet sekci .text, protože se v ní nemusejí provádět relokace (které vyžadují, aby se do ní zapsalo, což samozřejmě znemožňuje sdílení). U sdílených knihoven je proto jeho nepoužití neomluvitelné -- okamžitě bugreportovat, víš-li o nějaké takové knihovně.

    Má ovšem i nevýhody, zejména na intelu komplikuje jiné využití ebx, takže vede k méně efektivnímu kódu. Programy normálně natahují .text na danou adresu virtuální paměti (relokují se jen ne pre-linkované knihovny), takže je sdílena -- a použitím -fPIC proto získáváš jen ty nevýhody.
    3.9.2005 15:29 #Tom
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    Už si nepamatuju všechny knihovny mají vypnutý PIC. Podle toho, co jsem o PIC četl, tak bez něj je potřeba knihovnu zavádět do paměti pro každý program znova - snad to tak chápu dobře i z vašeho příspěvku. Právě toto mě motivovalo k centrálnímu zapnutí PIC přes proměnné prostředí CFLAGS/CPPFLAGS, ze zdrojáků instaluju skoro všechno a nechce se mi na to myslet při každé kompilaci. Zjistil jsem ale, že sdílených knihovnách je uložena velká část kódu - u mě je to asi 276 MB z 580 MB. Řekl bych, že zapnutím PIC pro všechno zase tolik neztratím.
    1.9.2005 20:57 trancelius | skóre: 22
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    Jsou borci co jedou i na -O8, tak myslím, že to není až zas tak riskantní. Jinak ten rozdíl je znát spíše mezi -O0, -O1 a -O2, dál to jsou už jen drobnosti a nemusí to vždy přinést ideální poměr cena/výkon (kde cena je snížení stability)
    1.9.2005 21:11 #Tom
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    -O3 je maximum (pokud vím, v manuálové stránce vyšší není), takže mají jen třetí stupeň, i když napíšou osmičku.
    1.9.2005 21:45 trancelius | skóre: 22
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    Je to možný... to by pak vysvětlovalo, proč to nejde poznat :D
    2.9.2005 16:49 Andrej | skóre: 51 | blog: Republic of Mordor
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    Nebo je tam něco tak experimentálního, že to ani není v dokumentaci... :-) Pak by totiž šťouralové jako já zkoušeli, co to snese. :-D
    Luboš Doležel (Doli) avatar 2.9.2005 20:06 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    V Makefile/skriptu u Quake 3 jsem někde viděl -O8
    1.9.2005 21:00 D-Evil | skóre: 25 | Praha
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    Osobně jsem na Gentoo rozdíl mezi -O2 a -O3 poznal jen jeden, delší kompilace v případě O3. Zrychlení jsem pouhym okem nezpozoroval žádný, ale je možný, že moje nastavení pro GCC nebyly úplně optimální, takže to berte spíš jako jednu osobní zkušenost, která nemusí platit všude.
    1.9.2005 22:12 snowracer | skóre: 21 | blog: Omniloquent | Praha
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    Z mého pohledu se vyplatí používat O2. Binárku jsou téměř stejně rychlé, jako ty, které vylezou z kompilátoru při použití O3, jsou o něco menší a jsou široce používány, na což se jistě myslí i u testování programů.
    2.9.2005 21:08 unchallenger | skóre: 69 | blog: unchallenger
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    Historicky jsou vyšší úrovně optimalizace u GCC bugovitější a méně otestované, že se s -O3 chybně zkompilovalo jádro, nebyla tak řídká situace. Kompiluje se citelně déle a rozdíl ve výkonu je minimální, někdy klidně i negativní, protože se toho hodně inlinuje, naroste velikost kódu, který se tím už moc nezrychlí, ale zato se ho méně vejde do keší procesoru... Kromě toho je s -O3 v podstatě nemožné debuggování (s -O debugguji normálně, s -O2 se dá jako co, ale -O3 je smrt). Většího zrychlení než s -O2 -> -O3 spíš dosáhneš nějakým špinavým způsobem typu -fomit-frame-pointer, -ffast-math a pod. (žádám Gentooisty, kteří si teď rychle přidají do flagů -ffast-math, aby si pak stěžovali na lampárně, ne mně, že něco počítá blbě).
    3.9.2005 08:49 trancelius | skóre: 22
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    Myslím, že většina Gentooistů si moc zbrkle nedává do CFLAGS kdejaký (potenciálně nebezpečný) flagy... (mluvím za sebe)
    3.9.2005 09:44 snowracer | skóre: 21 | blog: Omniloquent | Praha
    Rozbalit Rozbalit vše Re: Nejlepší nastavení GCC
    Používám -ffast-math na všech počítačích kromě produkčních serverů. Nestěžuji si :-)

    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.