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 11:22 | Nová verze

    Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.17.0. Podrobný přehled novinek v changelogu. Přidána byla základní podpora gamepadů. Opraveno bylo několik zranitelností. Původně se jedná o Minecraftem inspirovaný Minetest v říjnu loňského roku přejmenovaný na Luanti.

    Ladislav Hagara | Komentářů: 0
    dnes 11:00 | IT novinky

    Americká technologická společnost Apple loni v Irsku na daních zaplatila 17 miliard dolarů (zhruba 350 miliard Kč). To představovalo 40 procent celkové částky, kterou firma odvedla na dani z příjmů po celém světě. Vyplývá to z účetních výkazů podniku. Platbu výrazně zvýšilo rozhodnutí Soudního dvora EU z roku 2024, podle něhož měl Apple doplatit Irsku na daních 13 miliard eur (313 miliard Kč).

    Ladislav Hagara | Komentářů: 0
    dnes 09:55 | Zajímavý projekt

    CrossPoint Reader je open-source alternativní firmware pro menší, levné čtečky, vybavené cca čtyřpalcovým e-ink displejem. Zahrnuje aplikaci pro čtení e-knih a webový server pro konfiguraci a přenos souborů po síti. Verze 1.0 byla vydána v únoru 2026. Recenze současné verze 1.5 vyšla na Linux Weekly News.

    |🇵🇸 | Komentářů: 0
    21.8. 05:00 | Nová verze

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

    Ladislav Hagara | Komentářů: 0
    21.8. 04:22 | Nová verze

    Byla vydána nová verze 7.1 (YouTube) svobodného open source redakčního systému WordPress. Kódové jméno Mary Lou bylo vybráno na počest americké jazzové klavíristky Mary Lou Williams (YouTube).

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

    Bun (Wikipedie), tj. běhové prostředí (runtime) a toolkit pro JavaScript a TypeScript, alternativa k Node.js a Deno, byl vydán ve verzi 1.4. Představení novinek také na YouTube. Bun byl přepsán z programovacího jazyka Zig do Rustu. Pomocí Claude Fable 5.

    Ladislav Hagara | Komentářů: 0
    20.8. 12:33 | Nová verze

    Vývojáři KDE na Mastodonu oznámili vydání balíku aplikací KDE Gear 26.08. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    20.8. 04:11 | IT novinky

    Společnost PINE64 kvůli nedostatku a vysokým cenám DRAM a eMMC dočasně pozastavuje výrobu linuxových zařízení. Výroba zařízení jako PineTime, PineVoice a Pinecil pokračuje.

    Ladislav Hagara | Komentářů: 0
    20.8. 02:55 | IT novinky

    Společnost Stripe se dohodla na akvizici společnosti OpenRouter. Za 7,5 miliardy dolarů.

    Ladislav Hagara | Komentářů: 0
    20.8. 01:33 | Nová verze

    Byla vydána nová verze 1.27 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (19%)
     (30%)
     (7%)
     (6%)
     (2%)
     (15%)
     (22%)
    Celkem 2473 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: Neblokujici prijem zpravy v OpenMPI

    11.11.2011 17:34 Marek Kaluza
    Neblokujici prijem zpravy v OpenMPI
    Přečteno: 435×
    Zdravim, ve svem programu vyuzivajim OpenMPI mam nasledujici blok kodu:
        if (myid == 0)
        {
            cout << myid << ": Zahajuju prenos" << endl;
            MPI_Send(&message, 1, MPI_INT, 1, TAG, MPI_COMM_WORLD);
            MPI_Send(&message, 1, MPI_INT, 1, TAG, MPI_COMM_WORLD);
            MPI_Send(&message, 1, MPI_INT, 2, TAG, MPI_COMM_WORLD);
        }
        else
        {
            while (1)
            {
                MPI_Irecv(&message, 1, MPI_INT, MPI_ANY_SOURCE, TAG, MPI_COMM_WORLD, &request);
                MPI_Test(&request, &flag, &stat);
                if (flag)
                {
                    cout << myid << ": Dostal jsem zpravu od prvniho procesoru" << endl;                   
                }
            }
        }
    
    Program spoustim se 3 procesy a vetsinou vypise pouze:
    0: Zahajuju prenos
    2: Dostal jsem zpravu od prvniho procesoru
    
    Tzn, zpravu dostane jen treti proces, ale druhy ne. Nekdy se dokonce vypise jen prvni radek. Tipuju ze tam nekde dochazi k deadlocku, ale nemuzu na to prijit kde.

    Pokud se divite, proc cyklicky kontroluju pritomnost dat pomoci neblokujiho receive+MPI_Test misto toho abych pouzil standardni MPI_Recv, tak je to z toho duvodu, ze obecne resim problem, aby proces kontrolovat zda mu dosla data, pokud ano, aby nejakym zpusobem odpovedel a pokud ne, tak at provadi jinou cinnost.

    Mozna jdu na toto uplne spatne, muzete me prosim nejak nasmerovat?

    Odpovědi

    12.11.2011 10:42 Marek Kaluza
    Rozbalit Rozbalit vše Re: Neblokujici prijem zpravy v OpenMPI
    Tak jsem zjistil, ze kdyz jako prvni prikaz do toho bloku while(1) dam sleep(1), tak to zacne fungovat mnohem spolehliveji (vypis probehne jak ma), ale i tak se to priblizne v jednom z peti pripadu zasekne.

    Pritom tady: https://www.cac.cornell.edu/VW/MPIP2P/waittestfree.aspx jsem o MPI_Test vycetl:

    "More practically, MPI_Test permits an event-driven style of programming, in which events are fired whenever a MPI_Test comes back true. This is particularly useful on the receiving side. A receiver can post a nonblocking receive early, then periodically check the status of the receive with MPI_Test."

    A to je presne to, o co se neuspesne snazim...

    Prikladam jeste kompletni zdrojak:

    http://pastebin.com/X3aP6r2J

    a skript, ktery pouzivam na preklad a spusteni programu:

    http://pastebin.com/yPbNtcKY

    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.