Open MPI broken (November 2 release) ?

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Open MPI broken (November 2 release) ?

Cygwin list mailing list
I tried re-compiling some things after updating to openmpi 4.0.5 and am getting some unexpected failures from mpifort and mpicc:
$ mpifort -O3 testmpi.f90/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lhwloc/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -levent_core/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -levent_pthreads/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lzcollect2: error: ld returned 1 exit status
Denny@DESKTOP-BEBCMC4 ~/MPI_tests$
I have some working executables from October 26, so I assume there is a problem or something else that I need to update.  An example causing the above problem follows.  Running Cygwin on an Intel i9-9900K.  Thanks for your help.
Example:
program testmpi!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!  MPI tests for Raspberry Pi cluster.!!  - Hello World!  - Broadcast and reduce!  - Pass along real array!  -!  -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!implicit noneinclude 'mpif.h'integer:: myproc, numproc, ierr, len, istatus(mpi_status_size)character(mpi_max_processor_name):: hostnameinteger:: nreal*4:: y, z, x(1024)!!  Hello world.!call mpi_init(ierr)call mpi_comm_rank(mpi_comm_world, myproc, ierr)call mpi_comm_size(mpi_comm_world, numproc, ierr)call mpi_get_processor_name(hostname, len, ierr)write(6,'(i5,a19,a6)') myproc, ': Hello world from ', hostnamecall mpi_barrier(mpi_comm_world,ierr)!!  Broadcast and reduce.!y = 0.0z = 0.0if(myproc.eq.0) y = 1.0call mpi_bcast(y, 1, mpi_real, 0, mpi_comm_world, ierr)call mpi_reduce(y, z, 1, mpi_real, mpi_sum, 0, mpi_comm_world,  &                ierr)if(myproc.eq.0) write(6,*) numproc, ' should be ', zcall mpi_barrier(mpi_comm_world,ierr)!!  Up the chain and back to the start.!if(myproc==0) then  do n=1, 1024    x(n) = float(n)    enddoelse  do n=1, 1024    x(n) = -float(n)    enddo  call mpi_recv(x, 1024, mpi_real, myproc-1, mpi_any_tag,  &                mpi_comm_world, istatus, ierr)  endifif(myproc<numproc-1) call mpi_send(x, 1024, mpi_real,  &                      myproc+1, 1, mpi_comm_world, ierr)if(myproc==numproc-1) call mpi_send(x, 1024, mpi_real,  &                             0, 1, mpi_comm_world, ierr)x(1:1024) = 0.0if(myproc==0) then  call mpi_recv(x, 1024, mpi_real, numproc-1, mpi_any_tag,  &                               mpi_comm_world, istatus, ierr)  write(6,'(f8.2,a11,f8.2)') x(1024), ' should be ', float(1024)  endifcall mpi_barrier(mpi_comm_world,ierr)!!  Finished.!call mpi_finalize(ierr)stopend
--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple
Reply | Threaded
Open this post in threaded view
|

Re: Open MPI broken (November 2 release) ?

Cygwin list mailing list
Looks like copy/paste mangled the lines.  I'll try again.  Is the openMPI distribution not picking up all the libraries that should come along?
Denny@DESKTOP-BEBCMC4 ~/MPI_tests$ mpifort testmpi.f90/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lhwloc/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -levent_core/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -levent_pthreads/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lzcollect2: error: ld returned 1 exit status
Denny@DESKTOP-BEBCMC4 ~/MPI_tests$ cat testmpi.f90program testmpi!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!  MPI tests for Raspberry Pi cluster.!!  - Hello World!  - Broadcast and reduce!  - Pass along real array!  -!  -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!implicit noneinclude 'mpif.h'integer:: myproc, numproc, ierr, len, istatus(mpi_status_size)character(mpi_max_processor_name):: hostnameinteger:: nreal*4:: y, z, x(1024)!!  Hello world.!call mpi_init(ierr)call mpi_comm_rank(mpi_comm_world, myproc, ierr)call mpi_comm_size(mpi_comm_world, numproc, ierr)call mpi_get_processor_name(hostname, len, ierr)write(6,'(i5,a19,a6)') myproc, ': Hello world from ', hostnamecall mpi_barrier(mpi_comm_world,ierr)!!  Broadcast and reduce.!y = 0.0z = 0.0if(myproc.eq.0) y = 1.0call mpi_bcast(y, 1, mpi_real, 0, mpi_comm_world, ierr)call mpi_reduce(y, z, 1, mpi_real, mpi_sum, 0, mpi_comm_world,  &                ierr)if(myproc.eq.0) write(6,*) numproc, ' should be ', zcall mpi_barrier(mpi_comm_world,ierr)!!  Up the chain and back to the start.!if(myproc==0) then  do n=1, 1024    x(n) = float(n)    enddoelse  do n=1, 1024    x(n) = -float(n)    enddo  call mpi_recv(x, 1024, mpi_real, myproc-1, mpi_any_tag,  &                mpi_comm_world, istatus, ierr)  endifif(myproc<numproc-1) call mpi_send(x, 1024, mpi_real,  &                      myproc+1, 1, mpi_comm_world, ierr)if(myproc==numproc-1) call mpi_send(x, 1024, mpi_real,  &                             0, 1, mpi_comm_world, ierr)x(1:1024) = 0.0if(myproc==0) then  call mpi_recv(x, 1024, mpi_real, numproc-1, mpi_any_tag,  &                               mpi_comm_world, istatus, ierr)  write(6,'(f8.2,a11,f8.2)') x(1024), ' should be ', float(1024)  endifcall mpi_barrier(mpi_comm_world,ierr)!!  Finished.!call mpi_finalize(ierr)stopend


-----Original Message-----
From: Dennis Willen via Cygwin <[hidden email]>
To: [hidden email] <[hidden email]>
Sent: Mon, Nov 16, 2020 3:21 pm
Subject: Open MPI broken (November 2 release) ?

I tried re-compiling some things after updating to openmpi 4.0.5 and am getting some unexpected failures from mpifort and mpicc:
$ mpifort -O3 testmpi.f90/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lhwloc/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -levent_core/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -levent_pthreads/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lzcollect2: error: ld returned 1 exit status
Denny@DESKTOP-BEBCMC4 ~/MPI_tests$
I have some working executables from October 26, so I assume there is a problem or something else that I need to update.  An example causing the above problem follows.  Running Cygwin on an Intel i9-9900K.  Thanks for your help.
Example:
program testmpi!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!  MPI tests for Raspberry Pi cluster.!!  - Hello World!  - Broadcast and reduce!  - Pass along real array!  -!  -!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!implicit noneinclude 'mpif.h'integer:: myproc, numproc, ierr, len, istatus(mpi_status_size)character(mpi_max_processor_name):: hostnameinteger:: nreal*4:: y, z, x(1024)!!  Hello world.!call mpi_init(ierr)call mpi_comm_rank(mpi_comm_world, myproc, ierr)call mpi_comm_size(mpi_comm_world, numproc, ierr)call mpi_get_processor_name(hostname, len, ierr)write(6,'(i5,a19,a6)') myproc, ': Hello world from ', hostnamecall mpi_barrier(mpi_comm_world,ierr)!!  Broadcast and reduce.!y = 0.0z = 0.0if(myproc.eq.0) y = 1.0call mpi_bcast(y, 1, mpi_real, 0, mpi_comm_world, ierr)call mpi_reduce(y, z, 1, mpi_real, mpi_sum, 0, mpi_comm_world,  &                ierr)if(myproc.eq.0) write(6,*) numproc, ' should be ', zcall mpi_barrier(mpi_comm_world,ierr)!!  Up the chain and back to the start.!if(myproc==0) then  do n=1, 1024    x(n) = float(n)    enddoelse  do n=1, 1024    x(n) = -float(n)    enddo  call mpi_recv(x, 1024, mpi_real, myproc-1, mpi_any_tag,  &                mpi_comm_world, istatus, ierr)  endifif(myproc<numproc-1) call mpi_send(x, 1024, mpi_real,  &                      myproc+1, 1, mpi_comm_world, ierr)if(myproc==numproc-1) call mpi_send(x, 1024, mpi_real,  &                             0, 1, mpi_comm_world, ierr)x(1:1024) = 0.0if(myproc==0) then  call mpi_recv(x, 1024, mpi_real, numproc-1, mpi_any_tag,  &                               mpi_comm_world, istatus, ierr)  write(6,'(f8.2,a11,f8.2)') x(1024), ' should be ', float(1024)  endifcall mpi_barrier(mpi_comm_world,ierr)!!  Finished.!call mpi_finalize(ierr)stopend
--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:    https://cygwin.com/ml/#unsubscribe-simple
--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple
Reply | Threaded
Open this post in threaded view
|

Re: Open MPI broken (November 2 release) ?

Cygwin list mailing list
In reply to this post by Cygwin list mailing list
(Last attempt to add CF/LF ...)
Is the openMPI install not picking up all the libraries that it should?

-----Original Message-----
From: Dennis Willen via Cygwin <[hidden email]>
To: [hidden email] <[hidden email]>
Sent: Mon, Nov 16, 2020 3:21 pm
Subject: Open MPI broken (November 2 release) ?

I tried re-compiling some things after updating to openmpi 4.0.5 and am getting some unexpected failures from mpifort and mpicc:

$ mpifort -O3 testmpi.f90/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lhwloc/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -levent_core/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -levent_pthreads/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lzcollect2: error: ld returned 1 exit status

Denny@DESKTOP-BEBCMC4 ~/MPI_tests$

I have some working executables from October 26, so I assume there is a problem or something else that I need to update.  An example causing the above problem follows.  Running Cygwin on an Intel i9-9900K.  Thanks for your help.

Example:
program testmpi!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!  MPI tests.!!  - Hello World!  - Broadcast and reduce!  - Pass along real array!  -!  -!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!implicit noneinclude 'mpif.h'integer:: myproc, numproc, ierr, len, istatus(mpi_status_size)character(mpi_max_processor_name):: hostnameinteger:: nreal*4:: y, z, x(1024)!!  Hello world.!call mpi_init(ierr)call mpi_comm_rank(mpi_comm_world, myproc, ierr)call mpi_comm_size(mpi_comm_world, numproc, ierr)call mpi_get_processor_name(hostname, len, ierr)write(6,'(i5,a19,a6)') myproc, ': Hello world from ', hostnamecall mpi_barrier(mpi_comm_world,ierr)!!  Broadcast and reduce.!y = 0.0z = 0.0if(myproc.eq.0) y = 1.0call mpi_bcast(y, 1, mpi_real, 0, mpi_comm_world, ierr)call mpi_reduce(y, z, 1, mpi_real, mpi_sum, 0, mpi_comm_world,  ierr)if(myproc.eq.0) write(6,*) numproc, ' should be ', zcall mpi_barrier(mpi_comm_world,ierr)!!  Up the chain and back to the start.!if(myproc==0) then  do n=1, 1024    x(n) = float(n)    enddoelse  do n=1, 1024    x(n) = -float(n)    enddo  call mpi_recv(x, 1024, mpi_real, myproc-1, mpi_any_tag,  &                mpi_comm_world, istatus, ierr)  endifif(myproc<numproc-1) call mpi_send(x, 1024, mpi_real,  &                      myproc+1, 1, mpi_comm_world, ierr)if(myproc==numproc-1) call mpi_send(x, 1024, mpi_real,  &                             0, 1, mpi_comm_world, ierr)x(1:1024) = 0.0if(myproc==0) then  call mpi_recv(x, 1024, mpi_real, numproc-1, mpi_any_tag,  &                               mpi_comm_world, istatus, ierr)  write(6,'(f8.2,a11,f8.2)') x(1024), ' should be ', float(1024)  endifcall mpi_barrier(mpi_comm_world,ierr)!!  Finished.!call mpi_finalize(ierr)stopend
--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:    https://cygwin.com/ml/#unsubscribe-simple
--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple
Reply | Threaded
Open this post in threaded view
|

Re: Open MPI broken (November 2 release) ?

Cygwin list mailing list
In reply to this post by Cygwin list mailing list
On 17.11.2020 16:13, Dennis Willen via Cygwin wrote:
> Looks like copy/paste mangled the lines.  I'll try again.  Is the openMPI distribution not picking up all the libraries that should come along?
> Denny@DESKTOP-BEBCMC4 ~/MPI_tests$ mpifort testmpi.f90/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lhwloc/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -levent_core/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -levent_pthreads/usr/lib/gcc/x86_64-pc-cygwin/10/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lzcollect2: error: ld returned 1 exit status


can you send me the log files ?
It seems your system has problem in properly breaking the lines

I do not see problem on the /usr/lib/pkgconfig
files

$ grep  Libs ompi.pc
# dependencies), so only list these in Libs.private.
Libs: -L${libdir}     -L${libdir}  -lmpi
Libs.private: -lhwloc -levent_core -levent_pthreads -lz
--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple