[so] [Tema2][lin] mesaje
Daniel CIOCÎRLAN
daniel.ciocirlan1607 at cti.pub.ro
Tue Apr 9 20:33:34 EEST 2013
Ce afisez eu n-are legatura cu statusul. Afisez chestiile alea inainte sa intorc ceva in MPI_Send sau Receive. Faptul ca statusul e prost completat e consecinta a faptului ca primesc mesajele prost. .
Asta e mai mult ca sigur legat de mq_send si mq_receive.
Mesajele mele sunt impachetate si contin si ele un tag si rangul expeditorului. Ce nu inteleg e ca uneori, la prima rulare a mpirun, procesul 1 din inel primeste tagul 4096 si emitator 0, ca la oricare rulare succesiva, totul sa mearga ok.
Cum verific daca exista cozi deschise in sistem? Eu am avut grija sa eliberez si sa sterg chestiile la sfarsit, dar...
Adrian Sendroiu <molecula2788 at gmail.com> wrote:
Daniel CIOCÎRLAN <daniel.ciocirlan1607 at cti.pub.ro> writes:
> Merci, Adrian.
>
> La recv, dimensiunea de primit trebuie sa fie mai mare decat msgsize-ul din attr. Am rezolvat asta.
>
> Acum am intampinat altceva, pe care nu reusesc sa mi-l explic. La
> testul cu Ring, la _prima_ rulare a mpirun, primesc cateodata (cu
> afisarile mele de debug) urmatoarele:
>
> (5) Received tag = 4096 from 0 via /mpi_queue_5
> (0) sending tag = *13* to 1 via /mpi_queue_1
> Assertion fail_if(stat.MPI_SOURCE != rank - 1) failed at test_ring.c:43
> (2) Received tag = 4096 from 0 via /mpi_queue_2
> Assertion fail_if(stat.MPI_SOURCE != rank - 1) failed at test_ring.c:43
> (3) Received tag = 4096 from 0 via /mpi_queue_3
> Assertion fail_if(stat.MPI_SOURCE != rank - 1) failed at test_ring.c:43
> (1) Received tag = 4096 from 0 via /mpi_queue_1
> Assertion fail_if(stat.MPI_TAG != TAG) failed at test_ring.c:44
> (4) Received tag = 4096 from 0 via /mpi_queue_4
>
> (dupa care se blocheaza, evident, pt ca unele procese ies dupa fail_if)
>
> unde mesajele sunt de forma
> ($rank) primeste $tag de la $expeditor via $nume_coada.
>
> Nu inteleg de unde vine treaba cu 4096... TAG-ul din sursa test_ring
> era 4097, m-am gandit ca are vreo legatura, din care cauza l-am
> modificat in 13 (vezi mai sus primul mesaj). Dimensiunea pachetelor
> mele aveau intamplator 4096, dupa care am modificat-o. Am verificat
> iar attr-ul cozilor, ele au 8192. Nu inteleg de unde 4096, tot timpul
> cand primesc treaba asta.
>
> Am zis ca asta se intampla cateodata la prima rulare, dupa care totul
> merge frumos. Am alocat la inceput si distrus toate structurile IPC la
> sfarsit.
>
> Care ar fi problema? A mai dat cineva peste asta?
>
> Merci mult
> Dan
Completezi corect continutul structurii MPI_Status primita parametru in
MPI_Recv?
_______________________________________________
http://ocw.cs.pub.ro/courses/so/info/lista-discutii
More information about the so
mailing list