[mpich-discuss] Error while using MPI platform with CPP program
Umesh Shisode
ushisode1 at gmail.com
Thu May 21 08:37:27 CDT 2015
Hello Sir,
Sorry for your inconvenience. I will ask this on forum. Thanks for all your
kind help.
Regards,
Umesh Sharad Shisode,
M.Tech in Modeling and Simulation(2013-15),
Centre for Modeling and Simulation,
University of Pune.
On Thu, May 21, 2015 at 6:55 PM, Kenneth Raffenetti <raffenet at mcs.anl.gov>
wrote:
> Hi,
>
> Please do not use this list for general programming questions. Either take
> this discussion offline, or move it to a more appropriate forum. This list
> is for questions about MPICH.
>
> Thanks,
> Ken
>
> On 05/21/2015 06:54 AM, Umesh Shisode wrote:
>
>> Hello Antoine Rougier,
>>
>> I did not understand, [You have to change your code if you want to
>> keep using blocking communication.] you ask me about. Also now the
>> code is working fine, but it is only for same process and same numbers
>> of rows. For other cases it is giving me error (segmentation fault).
>> Please check it, I am attaching here the tar file of compile code. But
>> it is working for only following commands
>>
>> >> mpic++ main.cpp -o result
>> >> mpirun -np 4 result
>>
>> But for this case input matrix is (4 X 4) only.
>>
>> If you find any mistake please let me know.
>>
>>
>>
>> Regards,
>>
>> Umesh Sharad Shisode,
>> M.Tech in Modeling and Simulation(2013-15),
>> Centre for Modeling and Simulation,
>> University of Pune.
>>
>> On Wed, May 20, 2015 at 11:29 PM, Antoine Rougier
>> <rougier at par.tuwien.ac.at <mailto:rougier at par.tuwien.ac.at>> wrote:
>>
>> First, as far as I understand, the broadcast should not be between
>> blocking send on a process and blocking recv on the others. You have
>> to
>> change your code if you want to keep using blocking communication.
>>
>> Then, by running (with the previous modifications), I have got:
>> Fatal error in MPI_Recv: Invalid buffer pointer, error stack:
>> MPI_Recv(187): MPI_Recv(buf=(nil), count=8, MPI_DOUBLE, src=0, tag=3,
>> MPI_COMM_WORLD, status=0x7fffbc4e02d0) failed
>> MPI_Recv(126): Null buffer pointer
>>
>> It is probably an issue on your side, such as bad index.
>>
>> Antoine Rougier
>>
>> On 05/20/2015 05:17 PM, Umesh Shisode wrote:
>> > Hello Antoine Rougier,
>> >
>> > Thanks for your reply. Now I have code which can broadcast vector
>> as well
>> > as Matrix object (Attached here). But it is giving error when I
>> tried to
>> > send and receive part of matrix object it is giving me error.
>> Thanks again
>> > for your time. Please help me out. As it is not giving me correct
>> answer. I
>> > am waiting for your reply.
>> > Sorry for your inconvenience.
>> >
>> > I have attached here new code. It compiles when I want to
>> broadcast. But
>> > giving error for send and receive. I also attached error in png
>> file.
>> >
>> > Regards,
>> >
>> > Umesh Sharad Shisode,
>> > M.Tech in Modeling and Simulation(2013-15),
>> > Centre for Modeling and Simulation,
>> > University of Pune.
>> >
>> > On Wed, May 20, 2015 at 4:07 PM, Antoine Rougier
>> <rougier at par.tuwien.ac.at <mailto:rougier at par.tuwien.ac.at>>
>>
>> > wrote:
>> >
>> >> Hello,
>> >>
>> >> I think your issue comes from b.vect=NULL (according to the used
>> >> constructor) which is not a checked value in T
>> Vector<T>::get(int i). By
>> >> the way Ncol is no initialized before using it in MPI_Bcast.
>> >>
>> >> best regards,
>> >>
>> >> Antoine Rougier
>> >>
>> >>
>> >> On 05/20/2015 11:55 AM, Umesh Shisode wrote:
>> >>> Hello Junchao,
>> >>>
>> >>> I initialize vector b, but even then it is not working for
>> broadcasting.
>> >> It
>> >>> gives same error. As the vector class is user defined and also
>> I use
>> >>> dynamic memory allocation. This may be the reason for failing.
>> If you
>> >> know
>> >>> about it then please tell.
>> >>> I am here attaching the zip file which contains only the vector
>> class and
>> >>> main file as well as error I am facing. Please have a look at
>> it. Thanks
>> >>> for your time. I am waiting for your reply.
>> >>>
>> >>>
>> >>> Regards,
>> >>>
>> >>> Umesh Sharad Shisode,
>> >>> M.Tech in Modeling and Simulation(2013-15),
>> >>> Centre for Modeling and Simulation,
>> >>> University of Pune.
>> >>>
>> >>> On Tue, May 19, 2015 at 10:57 PM, Junchao Zhang
>> <jczhang at mcs.anl.gov <mailto:jczhang at mcs.anl.gov>>
>> >> wrote:
>> >>>
>> >>>> Your code "MPI_Bcast(&b(0), b.get_row(), MPI_DOUBLE, 1,
>> MPI_COMM_WORLD)"
>> >>>> is OK. You can find manual of MPI_Bcast at
>> >>>> http://mpi.deino.net/mpi_functions/MPI_Bcast.html
>> >>>> Don't forget to initialize the vector b, in other words,
>> allocate memory
>> >>>> for it, on ALL ranks.
>> >>>>
>> >>>>
>> >>>> --Junchao Zhang
>> >>>>
>> >>>> On Tue, May 19, 2015 at 9:27 AM, Umesh Shisode
>> <ushisode1 at gmail.com <mailto:ushisode1 at gmail.com>>
>> >>>> wrote:
>> >>>>
>> >>>>> Hi Junchao,
>> >>>>>
>> >>>>> I sort out the problem for MPI_Send() and MPI_Recv(), as I
>> requested in
>> >>>>> last mail. Now I have one more difficulty which is how can I
>> broadcast
>> >>>>> class object using MPI_Bcast() function. In my case, class is
>> Vector
>> >> (you
>> >>>>> can check it at vect_fun.h header file). I want to broadcast
>> it to all
>> >>>>> processes. I have used dynamic memory allocation in the code.
>> Please
>> >> help
>> >>>>> me to solved the issue. I am waiting for your reply. Thanks.
>> >>>>>
>> >>>>>
>> >>>>> Regards,
>> >>>>>
>> >>>>> Umesh Sharad Shisode,
>> >>>>> M.Tech in Modeling and Simulation(2013-15),
>> >>>>> Centre for Modeling and Simulation,
>> >>>>> University of Pune.
>> >>>>>
>> >>>>> On Tue, May 19, 2015 at 7:51 AM, Umesh Shisode
>> <ushisode1 at gmail.com <mailto:ushisode1 at gmail.com>>
>> >>>>> wrote:
>> >>>>>
>> >>>>>> Sorry Junchao,
>> >>>>>>
>> >>>>>> Thanks for your reply. But my problem is with MPICH only. My
>> question
>> >> is
>> >>>>>> how to send part of class object (in my case matrix object)
>> from one
>> >>>>>> process to another process using MPI_Send and receive using
>> MPI_Recv
>> >>>>>> functions. I tried a lot of way but couldn't do it. I hope
>> you will
>> >> help
>> >>>>>> me. Thanks in advance. I have write a function to get the
>> pointer
>> >> address
>> >>>>>> for first parameter of MPI_Send() function. Waiting for your
>> reply.
>> >>>>>>
>> >>>>>> Regards,
>> >>>>>>
>> >>>>>> Umesh Sharad Shisode,
>> >>>>>> M.Tech in Modeling and Simulation(2013-15),
>> >>>>>> Centre for Modeling and Simulation,
>> >>>>>> University of Pune.
>> >>>>>>
>> >>>>>> On Mon, May 18, 2015 at 7:31 PM, Junchao Zhang
>> <jczhang at mcs.anl.gov <mailto:jczhang at mcs.anl.gov>>
>> >>>>>> wrote:
>> >>>>>>
>> >>>>>>> Could not reproduce it with the latest MPICH. If the
>> problem is not
>> >>>>>>> specific to MPICH, you'd better move your question to other
>> forums
>> >> like
>> >>>>>>> stackoverflow.
>> >>>>>>>
>> >>>>>>> $mpirun -n 2 ./test
>> >>>>>>> Matrix A :
>> >>>>>>>
>> >>>>>>> 1 2 3 4
>> >>>>>>> 1 2 3 4
>> >>>>>>> 1 2 3 4
>> >>>>>>> 1 2 3 4
>> >>>>>>>
>> >>>>>>> Vector b before broadcast:
>> >>>>>>> 1.000000, 2.000000, 3.000000, 4.000000
>> >>>>>>> Matrix A column : 4
>> >>>>>>> after sending: lLim = 2 uLim = 4 for rank : 1
>> >>>>>>> count = 8
>> >>>>>>>
>> >>>>>>> Matrix A column : 0for rank = 1
>> >>>>>>> after receive: lLim = 2 uLim = 4 for rank : 1
>> >>>>>>> Ncol after broadcasting = 4
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> --Junchao Zhang
>> >>>>>>>
>> >>>>>>> On Mon, May 18, 2015 at 6:33 AM, Umesh Shisode
>> <ushisode1 at gmail.com <mailto:ushisode1 at gmail.com>>
>>
>> >>>>>>> wrote:
>> >>>>>>>
>> >>>>>>>> Hello Sir / Madam,
>> >>>>>>>>
>> >>>>>>>> This is Umesh Sharad Shisode, pursuing Masters in Modeling
>> and
>> >>>>>>>> Simulation, at Centre for Modeling and Simulation, Pune
>> University.
>> >> I am in
>> >>>>>>>> the final stage of my course. My Masters Thesis title is :
>> >>>>>>>>
>> >>>>>>>> Development of Conjugate Gradient solver in OpenFOAM /
>> CPP using
>> >>>>>>>> MPI
>> >>>>>>>>
>> >>>>>>>> I am now doing MPI part of my project and facing some
>> problems with
>> >>>>>>>> MPI functions syntax. I am trying to use CPP class object
>> with MPI
>> >>>>>>>> functions but it is giving some error. Which I don't
>> understand.
>> >>>>>>>>
>> >>>>>>>> Operating system : LINUX
>> >>>>>>>> Programming Language : CPP
>> >>>>>>>>
>> >>>>>>>> Commands I am using are :
>> >>>>>>>>
>> >>>>>>>> > mpic++ main.cpp -o result
>> >>>>>>>> > mpirun -np 2 result
>> >>>>>>>>
>> >>>>>>>> Please help me to sort out this issue . I am attaching
>> herewith zip
>> >>>>>>>> file containing the code which I want to parallelize with
>> the png
>> >> file
>> >>>>>>>> containing error. Waiting for your reply. Thanks in advance.
>> >>>>>>>>
>> >>>>>>>> Regards,
>> >>>>>>>>
>> >>>>>>>> Umesh Sharad Shisode,
>> >>>>>>>> M.Tech in Modeling and Simulation(2013-15),
>> >>>>>>>> Centre for Modeling and Simulation,
>> >>>>>>>> University of Pune.
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> _______________________________________________
>> >>>>>>>> discuss mailing list discuss at mpich.org
>> <mailto:discuss at mpich.org>
>> >>>>>>>> To manage subscription options or unsubscribe:
>> >>>>>>>> https://lists.mpich.org/mailman/listinfo/discuss
>> >>>>>>>>
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> _______________________________________________
>> >>>>>>> discuss mailing list discuss at mpich.org
>> <mailto:discuss at mpich.org>
>> >>>>>>> To manage subscription options or unsubscribe:
>> >>>>>>> https://lists.mpich.org/mailman/listinfo/discuss
>> >>>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>
>> >>>>> _______________________________________________
>> >>>>> discuss mailing list discuss at mpich.org <mailto:
>> discuss at mpich.org>
>> >>>>> To manage subscription options or unsubscribe:
>> >>>>> https://lists.mpich.org/mailman/listinfo/discuss
>> >>>>>
>> >>>>
>> >>>>
>> >>>> _______________________________________________
>> >>>> discuss mailing list discuss at mpich.org <mailto:
>> discuss at mpich.org>
>> >>>> To manage subscription options or unsubscribe:
>> >>>> https://lists.mpich.org/mailman/listinfo/discuss
>> >>>>
>> >>>
>> >>>
>> >>>
>> >>> _______________________________________________
>> >>> discuss mailing list discuss at mpich.org <mailto:discuss at mpich.org
>> >
>> >>> To manage subscription options or unsubscribe:
>> >>> https://lists.mpich.org/mailman/listinfo/discuss
>> >>>
>> >>
>> >>
>> >> _______________________________________________
>> >> discuss mailing list discuss at mpich.org <mailto:discuss at mpich.org>
>> >> To manage subscription options or unsubscribe:
>> >> https://lists.mpich.org/mailman/listinfo/discuss
>> >>
>> >
>> >
>> >
>> > _______________________________________________
>> > discuss mailing list discuss at mpich.org <mailto:discuss at mpich.org>
>> > To manage subscription options or unsubscribe:
>> > https://lists.mpich.org/mailman/listinfo/discuss
>> >
>>
>>
>> _______________________________________________
>> discuss mailing list discuss at mpich.org <mailto:discuss at mpich.org>
>> To manage subscription options or unsubscribe:
>> https://lists.mpich.org/mailman/listinfo/discuss
>>
>>
>>
>>
>> _______________________________________________
>> discuss mailing list discuss at mpich.org
>> To manage subscription options or unsubscribe:
>> https://lists.mpich.org/mailman/listinfo/discuss
>>
>> _______________________________________________
> discuss mailing list discuss at mpich.org
> To manage subscription options or unsubscribe:
> https://lists.mpich.org/mailman/listinfo/discuss
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mpich.org/pipermail/discuss/attachments/20150521/70dcd947/attachment.html>
-------------- next part --------------
_______________________________________________
discuss mailing list discuss at mpich.org
To manage subscription options or unsubscribe:
https://lists.mpich.org/mailman/listinfo/discuss
More information about the discuss
mailing list