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í
×
    dnes 14:22 | Nová verze

    Byla vydána nová verze 4.8.0 interaktivního shellu fish (friendly interactive shell, Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    dnes 12:00 | Nová verze

    Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem se nově stal čínský LineShine v Národním superpočítačovém centru v Šen-čenu (NSCS) s výkonem 2,198 exaFLOPS. Z prvního místa sesadil americký superpočítač El Capitan s výkonem 1,809 exaFLOPS. Nejvýkonnější český počítač C24 klesl na 215 místo. Karolina, GPU partition klesla na 249. místo a Karolina, CPU partition na 475. místo.

    … více »
    Ladislav Hagara | Komentářů: 2
    včera 21:00 | IT novinky

    Zemřel průkopník videoherní hudby Bobby Prince (Wikipedie). Složil hudbu pro hry Wolfenstein 3D, Doom, Doom II, Duke Nukem II a Duke Nukem 3D.

    Ladislav Hagara | Komentářů: 4
    včera 15:55 | IT novinky

    Počítačová hra Operace Flashpoint (Arma: Cold War Assault) od společnosti Bohemia Interactive slaví 25 let. Při této příležitosti bylo publikováno bezplatné hratelné Arma: Cold War Assault Remastered Demo a na GitHubu byly zveřejněny zdrojové kódy.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | IT novinky

    Na trh v České republice přichází HP EliteBoard G1a. Jde o plnohodnotný AI počítač integrovaný přímo do těla klávesnice, tedy zařízení, které na první pohled vypadá jako minimalistická klávesnice, ale ve skutečnosti nahrazuje klasickou počítačovou jednotku.

    Ladislav Hagara | Komentářů: 15
    včera 10:55 | Nová verze

    V lednu bylo oznámeno, že desktopové prostředí Xfce bude mít vlastní kompozitor pro Wayland s názvem xfwl4. O víkendu byla vydána první preview verze.

    Ladislav Hagara | Komentářů: 0
    22.6. 23:44 | Nová verze

    Minulý týden byl oficiálně vydán Android 17. Detaily na blogu a stránkách věnovaných vývojářům.

    Ladislav Hagara | Komentářů: 7
    22.6. 20:00 | IT novinky

    Dnes jde do prodeje zařízení Steam Machine. Steam Machine 512 GB za 1 039 EUR a Steam Machine 2 TB za 1 359 EUR. Do čtvrtka 25. června do 19:00 se lze zapsat na seznamy. Ty budou jednorázově náhodně slosovány, čímž bude určeno pořadí rezervací a čekacích listin.

    Ladislav Hagara | Komentářů: 19
    22.6. 14:44 | Nová verze

    Vývojáři OpenMW (Wikipedie) oznámili vydání verze 0.51.0 této svobodné implementace enginu pro hru The Elder Scrolls III: Morrowind. Přehled novinek v oznámení o vydání a také na YouTube a PeerTube.

    Ladislav Hagara | Komentářů: 0
    22.6. 13:33 | Nová verze

    Byla vydána nová verze 2026.3.0 "Carousels & Killer Whales" svobodného softwaru ScummVM (Wikipedie) umožňujícího bezproblémový běh mnoha klasických adventur na zařízeních, pro které nebyly nikdy určeny. Přehled novinek v poznámkách k vydání a na GitHubu.

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


    Dotaz: pthreads - prosím o kontrolu

    30.11.2009 10:12 tomas
    pthreads - prosím o kontrolu
    Přečteno: 453×
    Příloha:
    Zdravím,

    Jako programátor-samouk bych chtěl poprosit místní odborníky s následující situací: chci program který bude měnit data simultánně v několika vláknech, pak vlákna zastaví a provede nějakou souhrnnou operaci na všech datech, pak vlákna opět spustí a provede něco simultánně, a to celé se několikrát zopakuje.

    Můj návrh programu je přiložen.

    Program běží jak má, ale nejsem si jistý, jestli jsem tam nezapomněl nějakou náhodně se chovající chybu. Zejména si nejsem jistý, zda za ř. 54 nemůže dojít k nějaké nechtěné modifikaci mutexu či podmínky dřív, než řádek 118 zareaguje na signál poslaný před ř. 54.

    Umí někdo říct, zda uvedené řešení je správně?

    Díky.

    Odpovědi

    30.11.2009 14:43 Sinuhet | skóre: 31
    Rozbalit Rozbalit vše Re: pthreads - prosím o kontrolu
    Jak je to poskladano dohromady je to OK, rekl bych. Ale prijde mi to prilis komplikovane a neprehledne, pro zacatek bych doporucoval pouzit pthread_barrier_*.
    30.11.2009 16:00 tomas
    Rozbalit Rozbalit vše Re: pthreads - prosím o kontrolu
    Díky, podívám se, co ten barrier umí.
    30.11.2009 16:42 tomas
    Rozbalit Rozbalit vše Re: pthreads - prosím o kontrolu
    Příloha:
    Ten barrier se opravdu celkem hodí, kód se zkrátil a zpřehlednil. Pokud by někdy někdo řešil podobný problém, přikládám upravený kód.
    30.11.2009 18:57 Boris Dušek | skóre: 22 | blog: everything
    Rozbalit Rozbalit vše Re: pthreads - prosím o kontrolu
    Jen poznámka k tomu cyklu "Do something", který má trošku zdržet - jelikož ani i, ani j se nepoužívají k žádnému dalšímu výpočtu ani jako parametry volání nějaké funkce, tak při nastavení optimalizace (třeba gcc -O2) kompilátor usoudí, že ten cyklus nic nemění a ten for cyklus vůbec do výsledného kódu nedá. Proto je třeba označit proměnné i,j jako "volatile", aby překladač bral každé čtení a zápis do i, j jako něco, co může mít vedlejší efekty (což je myslím definice "volatile" v C), a tím pádem i vliv na korektnost programu. Když jsem dal "volatile int i, j;", tak už tam ten for cyklus i při optimalizaci nechal.
    vim ~/.emacs
    30.11.2009 19:17 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: pthreads - prosím o kontrolu
    Ještě lepší by samozřejmě bylo použít např. nanosleep().
    30.11.2009 20:36 tomas
    Rozbalit Rozbalit vše Re: pthreads - prosím o kontrolu
    Jasně - já to zkoušel bez optimalizace; nakonec se mi ale stejně jako lepší generátor zdržení osvědčilo prostě spustit program v gdb a pomocí break pointu zarazit jedno vlákno, zatímco zbytek pokračoval (pomocí toho jsem odhalil pár prvních chyb).
    3.12.2009 00:02 vencas | skóre: 32
    Rozbalit Rozbalit vše Re: pthreads - prosím o kontrolu
    Podívejte se na OpenMP. Na typy úloh, kde se OpenMP hodí, je kód pak o dost přehlednější, ale nevím, jestli je to váš případ. Mně to funguje výborně.

    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.