I doubt that, because the probe functions are only used to determine if a
message is ready, but they don't dealt with the contents of the message. I
think that there must be some other problem. The function does write correct
output as it is, but generates a segfault at the end, when some of the mpi
ranks that are running octave terminate improperly. The problem might be
that rank 0 sends a message to the other ranks when the work is done, and
the other ranks break out of the loop when MPI_Iprobe tells them that they
can stop, but the message is never received on ranks > 0. Then MPI_Finalized
happens while the messages are pending. Maybe that's the problem. If so, use
of a blocking send would solve it.

At any rate, this code can be used, but it's a little inelegant. I'll do
some benchmarking next week.

Cheers, Michael

On Fri, Nov 27, 2009 at 5:43 PM, Riccardo Corradini <
riccardocorrad...@yahoo.it> wrote:

> I think is because probe and Iprobe should check also the other internal
> objects.
> (capacity, number of dimensions ,dim vector etc.. and so on for any
> octave_value ..have a look at the source of MPI_send and MPI_Recv)
> Bests
> Riccardo
>
> --- *Ven 27/11/09, Michael Creel <michael.cr...@uab.es>* ha scritto:
>
>
> Da: Michael Creel <michael.cr...@uab.es>
> Oggetto: Re: example octave_comm_test updated
> A: "Riccardo Corradini" <riccardocorrad...@yahoo.it>
> Cc: "Jaroslav Hajek" <high...@gmail.com>, "octave-forge list" <
> octave-dev@lists.sourceforge.net>
> Data: Venerdì 27 novembre 2009, 14:00
>
> I made a slight change to the Makefile, and now things compile for me. I
> also added 2 Monte Carlo examples, the simple one from the other day, and a
> more sophisticated one that load balances and that keeps working even  if
> compute nodes go missing. There is some problem with exiting, I don't know
> what the problem is.
> Cheers, MIchael
>
>
>
> On Thu, Nov 26, 2009 at 3:16 PM, Riccardo Corradini <
> riccardocorrad...@yahoo.it<http://mc/compose?to=riccardocorrad...@yahoo.it>
> > wrote:
>
>> Now it should work
>> I tested the new examples (have a loot at inst folder).
>> Let me know if it is the same for you.
>> Bests
>> Riccardo
>>
>> --- *Gio 26/11/09, Michael Creel 
>> <michael.cr...@uab.es<http://mc/compose?to=michael.cr...@uab.es>
>> >* ha scritto:
>>
>>
>> Da: Michael Creel 
>> <michael.cr...@uab.es<http://mc/compose?to=michael.cr...@uab.es>
>> >
>> Oggetto: Re: example octave_comm_test updated
>> A: "Riccardo Corradini" 
>> <riccardocorrad...@yahoo.it<http://mc/compose?to=riccardocorrad...@yahoo.it>
>> >
>> Cc: "Jaroslav Hajek" 
>> <high...@gmail.com<http://mc/compose?to=high...@gmail.com>>,
>> "octave-forge list" 
>> <octave-dev@lists.sourceforge.net<http://mc/compose?to=octave-...@lists.sourceforge.net>
>> >
>> Data: Giovedì 26 novembre 2009, 10:59
>>
>>
>>
>>
>> On Thu, Nov 26, 2009 at 10:45 AM, Riccardo Corradini <
>> riccardocorrad...@yahoo.it<http://mc/compose?to=riccardocorrad...@yahoo.it>
>> > wrote:
>>
>>>  Hi all,
>>> I have updated the example octave_comm_test.cc ( I have just inserted a
>>> check on the input).
>>> Let me know what you think.
>>> Bests
>>> Riccardo
>>>
>>>
>> I haven't be able to get things to compile with this new communicator
>> stuff. From a check out right now, "make all" gives me
>>
>> mkoctfile -c -I/usr/lib/openmpi/include -I/usr/lib/openmpi/include/openmpi
>> comm-util.cc
>> comm-util.cc: In function ‘ompi_communicator_t* do_get(const
>> octave_value&) [with T = int]’:
>> comm-util.cc:39: error: invalid conversion from ‘int’ to
>> ‘ompi_communicator_t*’
>> comm-util.cc: At global scope:
>> comm-util.cc:34: error: explicit template specialization cannot have a
>> storage class
>> comm-util.cc: In function ‘ompi_communicator_t* do_get(const
>> octave_value&) [with T = long int]’:
>> comm-util.cc:51: error: invalid conversion from ‘long int’ to
>> ‘ompi_communicator_t*’
>> comm-util.cc: At global scope:
>> comm-util.cc:46: error: explicit template specialization cannot have a
>> storage class
>> comm-util.cc:72: error: explicit template specialization cannot have a
>> storage class
>> mich...@yosemite
>> :~/Desktop/of/octave/trunk/octave-forge/extra/openmpi_ext/src$
>>
>> I'm using openmpi 1.3.2 from Ubuntu:
>> mich...@yosemite:~$ dpkg -l openmpi*
>> Desired=Unknown/Install/Remove/Purge/Hold
>> |
>> Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
>> |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
>> ||/ Name                Version             Description
>>
>> +++-===================-===================-======================================================
>> ii  openmpi-bin         1.3.2-3ubuntu1      high performance message
>> passing library -- binaries
>> ii  openmpi-common      1.3.2-3ubuntu1      high performance message
>> passing library -- common fil
>> un  openmpi-dev         <none>              (no description available)
>> un  openmpi-libs0       <none>              (no description available)
>> mich...@yosemite:~$ dpkg -l libopenm*
>> Desired=Unknown/Install/Remove/Purge/Hold
>> |
>> Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
>> |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
>> ||/ Name                Version             Description
>>
>> +++-===================-===================-======================================================
>> ii  libopenmpi-dev      1.3.2-3ubuntu1      high performance message
>> passing library -- header fil
>> un  libopenmpi1         <none>              (no description available)
>> ii  libopenmpi1.3       1.3.2-3ubuntu1      high performance message
>> passing library -- shared lib
>> mich...@yosemite:~$
>>
>>
>> The original checkins of MPI_Probe and MPI_Iprobe do work for me, and I'm
>> making a montecarlo.m that uses them. If you have time to add new functions,
>> I'd like to see MPI_Bcast. I think that would complete the list of things I
>> use for my econometric applications.
>>
>> Cheers, Michael
>>
>>
>>
>>
>>
>
>
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Octave-dev mailing list
Octave-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/octave-dev

Reply via email to