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 19:55 | Zajímavý software

    Uživatelé mobilních telefonů s Linuxem si nyní mohou nainstalovat aplikaci Mobilní Datovka. Díky tomu je přístup k datovým schránkám dostupný i na zařízeních s mobilními linuxovými distribucemi, jako jsou například Mobian, NixOS Mobile, pmOS atd. Aplikace je dostupná na Flathubu.

    David Heidelberg | Komentářů: 0
    včera 13:33 | Komunita

    Software Freedom Conservancy v novém dokumentu shrnuje doporučení, jak přistupovat ke generativní AI založené na LLM při přispívání do svobodného a open-source softwaru. Mimo jiné vyzývá k obezřetnosti, transparentnosti a revizi generovaného kódu člověkem.

    |🇵🇸 | Komentářů: 0
    včera 13:22 | Nová verze

    Byla vydána nová verze 5.6.0 programu na úpravu digitálních fotografií darktable (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    20.6. 20:11 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma. V Týdnu v GNOME je zmíněn flatpak balíček pro GIMP 0.54.1 z roku 1996. Jedná se o poslední verzi GIMPu postavenou nad toolkitem Motif.

    Ladislav Hagara | Komentářů: 0
    20.6. 19:11 | Nová verze

    Home Assistant Operating System, tj. linuxová distribuce optimalizována pro hostování Home Assistanta a jeho aplikací, byl vydán v nové major verzi 18.0.

    Ladislav Hagara | Komentářů: 0
    20.6. 18:11 | Komunita

    Po šestiletém úsilí byla z jádra Linux odstraněna funkce strncpy(). Všechna předchozí volání této funkce byla převedena na bezpečnější alternativy.

    Ladislav Hagara | Komentářů: 1
    20.6. 17:22 | Nová verze

    Byla vydána nová verze 261 správce systému a služeb systemd (Wikipedie, GitHub). Z novinek lze vypíchnout nový subsystém IMDS (Cloud "Instance Metadata Service"), nový příkaz storagectl nebo novou komponentu systemd-sysinstall.

    Ladislav Hagara | Komentářů: 3
    20.6. 12:00 | Nová verze

    Vývojové prostředí Qt Creator bylo vydáno ve verzi 20 (seznam změn). Novinky zahrnují hlavně rozšíření pro integraci LLM agentů nebo minimalistický editační režim uživatelského rozhraní („zen mode“).

    |🇵🇸 | Komentářů: 0
    19.6. 10:22 | Humor

    Už jste se prolétli na webu Google Earth? Přibyl tam Simulátor letu (Nástroje / Simulátor letu). Funguje i bez účtu Google [𝕏].

    Ladislav Hagara | Komentářů: 0
    19.6. 09:55 | Nová verze

    Byla vydána nová verze 4.7 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 3
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1957 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Lidská hloupost je nekonečná, obzvlášť ta moje.

    29.3.2007 18:26 | Přečteno: 1457× | Java | poslední úprava: 29.3.2007 18:32

    Po vzoru Leoše Literáka se přiznám ke své v mém případě spíš neznalosti.

    Píšu do školy javový program na kreslení animací kinematických křivek. Celé to je postavené na výpočtu jednotlivých bodů a jejich spojování přímkami. Výpočty jsou celkem triviální, kreslení většiny křivek také. Najdou se však křivky, které mají i 15000 bodů. Vykreslení takové křivky trvá docela dlouho (cca 18 ms). Proto jsem se rozhodl optimalizovat.

    Optimalizace se zadařila a čas jsem stáhl na třetinu. Přestala však fungovat jiná věc. Při měnění parametrů za běhu se program začal nepříjemně trhat. Dlouhou dobu jsem nemohl zjistit, kde je problém. Celou optimalizaci jsem párkrát předělal, pohrál jsem si se synchronizací a stále nic.

    Po nějakém čase mě napadlo porovnat kód se starším, který fungoval v pořádku. Jediný podstatný rozdíl byl ve volání garbage collectoru při každé změně. Přišlo mi to divné, ale zkusit jsem to musel. K mému překvapení se po zakomentování onoho řádky všechno vrátilo do správných kolejí.

    Po podrobnějším měření jsem s hrůzou zjistl, že volání System.gc() zažere cca 70 ms. Jindy by to nevadilo, ale když potřebuju překreslovat jednou za 10 ms, tak je to znát.

    Je až k nevíře, jak mě objevení téhle prkotiny potěšilo :) ... Chybami se člověk učí :)

           

    Hodnocení: 91 %

            špatnédobré        

    Obrázky

    Lidská hloupost je nekonečná, obzvlášť ta moje., obrázek 1 Lidská hloupost je nekonečná, obzvlášť ta moje., obrázek 2

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

    Komentáře

    Vložit další komentář

    vencour avatar 29.3.2007 20:40 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
    Rozbalit Rozbalit vše Re: Lidská hloupost je nekonečná, obzvlášť ta moje.

    Kdybych měl pokaždý psát blogspot, když se chytim za nos :-), ale dobrý ...

    Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
    Snilard avatar 29.3.2007 21:51 Snilard | skóre: 3 | blog: Zápisky Ještěrky | Praha
    Rozbalit Rozbalit vše Re: Lidská hloupost je nekonečná, obzvlášť ta moje.
    Uznávám je to malichernost. Ale malichernost, která mě dostala natolik, že jsem přehodnotil svůj názor nezakládat si blog :)
    Jsem velký zlý itčko. Jestli budeš zlobit, dostaneš přednášku o Hilbertových prostorech.
    vencour avatar 29.3.2007 21:58 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
    Rozbalit Rozbalit vše Re: Lidská hloupost je nekonečná, obzvlášť ta moje.

    Já vim. Jsou věci v životě, co člověka naučí nadhledu a věci, co rozšíří obzory.

    Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
    Snilard avatar 29.3.2007 22:14 Snilard | skóre: 3 | blog: Zápisky Ještěrky | Praha
    Rozbalit Rozbalit vše Re: Lidská hloupost je nekonečná, obzvlášť ta moje.
    Tak tohle mezi ně patří.
    Dřív jsem si myslel, že volání garbage collectoru jen zvýší prioritu jeho vlákna, což by nemělo zabrat moc času. Ale 70 ms na mém docela silném stroji mi vyrazilo dech.
    Jsem velký zlý itčko. Jestli budeš zlobit, dostaneš přednášku o Hilbertových prostorech.
    30.3.2007 15:31 podlesh | skóre: 38 | Freiburg im Breisgau
    Rozbalit Rozbalit vše Re: Lidská hloupost je nekonečná, obzvlášť ta moje.
    No jo, RTFM :-) System.gc() by se pokud možno nemělo volat nikdy.
    Luk avatar 30.3.2007 15:56 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Lidská hloupost je nekonečná, obzvlášť ta moje.
    Také jsem si s tím kdysi dávno nabil hubu. V nějakém úkolu do školy jsem vytvářel objekty tak rychle, že to často spadlo na OutOfMemoryError. V první fázi jsem to řešil tou nejhorší možnou cestou - volat explicitně System.gc(). Program se zpomalil naprosto brutálně, takže bylo hned jasné, že tudy cesta nevede :-D
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    30.3.2007 17:16 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Lidská hloupost je nekonečná, obzvlášť ta moje.
    njn, v učebniciach C++ sa pooling často spomína ... v tých o Jave to asi autori považujú za imperialistický prežitok :-)
    Luk avatar 30.3.2007 18:16 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Lidská hloupost je nekonečná, obzvlášť ta moje.
    V té době tu ještě žádné knihy o Javě nebyly (a pracovalo se v Javě 1.1). Čili by to mohla být chyba přednášejícího, že nás na to neupozornil ;-) BTW ani jsem netušil (a zjistil jsem to až teď), že existuje věda stringologie :-D
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    30.3.2007 20:15 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: Lidská hloupost je nekonečná, obzvlášť ta moje.
    BTW ani jsem netušil (a zjistil jsem to až teď), že existuje věda stringologie :-D
    Kdysi jsem kdesi sehnal 220stránkové PDFko celé věnované algoritmům hledání podřetězce v řetězci. Velmi poučné :-)
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    30.3.2007 20:11 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: Lidská hloupost je nekonečná, obzvlášť ta moje.
    Ale 70 ms na mém docela silném stroji mi vyrazilo dech.
    To buďte rád, že ne 10 minut (sic!).
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    30.3.2007 03:30 User682 | skóre: 38 | blog: aqarium | Praha
    Rozbalit Rozbalit vše Re: Lidská hloupost je nekonečná, obzvlášť ta moje.
    No vidite, me se vcera stalo, ze jsem zkratil casy buildu o 1/3-2/5. A to kompiluju Compiera aktivne jiz v mesicich (22MB java kodu a to se hodne modelu generuje). A jedine co me ted pali jsou diskove operace a s nimi dalsi 1GB RAM.

    Jenomze to je tim, ze si clovek nesedl k masine a nejak tomu nechtel venovat cas. Specielne ant-u.

    Je to nahoda, ze jsem vcera sedel u masiny a chystal se domu a zacal si s danou veci hrat.

    Kupodivu kdyz jsem se pred par roky/mesici bavil s Leosem Literakem o ant-u, tak jsem tomuto nastroji nedaval tolik velkou dulezitost.

    Co si budeme rikat, tak nejak se mi overuje pravidlo, ze pokud vidite na veci, ze by se asi mela optimalizovat, tak se to da dotahnout do dokonalosti az na 10% casu, ktery to bezelo predtim.

    A kdyz zacinate s Javou, tak kazdy si asi projde spojovani retezcu pomoci String += anebo StringBuffer().

    No zajimavy pocit, kdyz zjistite, ze neco vlastne neumite, i presto, ze s tim umite pracovat a predtim vsechno fungovalo. I kdyz neefektivne.

    bye gf
    Luk avatar 30.3.2007 10:36 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
    Rozbalit Rozbalit vše Re: Lidská hloupost je nekonečná, obzvlášť ta moje.
    A kdyz zacinate s Javou, tak kazdy si asi projde spojovani retezcu pomoci String += anebo StringBuffer().
    Spojování pomocí String += každý relativně snadno zavrhne, až zjistí, že je to O(n^2). Tedy spíše mu bude divné, že je to najednou nějak strašně pomalé. Ale StringBuffer je z jiného soudku, už proto, že StringBuilder je až záležitost verze 1.5, takže leckdo může StringBuffer používat čistě ze zvyku.
    Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
    Snilard avatar 30.3.2007 16:36 Snilard | skóre: 3 | blog: Zápisky Ještěrky | Praha
    Rozbalit Rozbalit vše Re: Lidská hloupost je nekonečná, obzvlášť ta moje.
    To, že je sčítání stringů pomocí += neefektivní, je známá věc. Ale jak je to s těma ostatníma, hlavně se StringBuilderem, budu muset nastudovat, nebo otestovat (a nebo mi to někdo osvětlíte?) Vnukli jste mi dobrou myšlenku na studium. Díky
    Naštěsí jsem nikdy nepracoval s moc složitými textky, takže mi +=, maximálně StringBuffer.append() stačilo :)
    Jsem velký zlý itčko. Jestli budeš zlobit, dostaneš přednášku o Hilbertových prostorech.
    30.3.2007 17:15 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Lidská hloupost je nekonečná, obzvlášť ta moje.
    nemusela by byť neefektívna, keby java dovolila tento operátor si napísať podľa svojho :-).

    Založit nové vláknoNahoru

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