Re: [OMPI users] OpenMPI v3.0 on Cygwin

2017-09-27 Thread Llelan D.

On 09/27/2017 3:04 PM, Jeffrey A Cummings wrote:

The MS-MPI developers disagree with your statement below and claim to be 
actively working on MPI-3.0 compliance, with an expected new version release 
about every six month.
They can disagree as much as they want. I've spent over 30 years doing 
contracts for and associated with MS and am very familiar with their 
policy of what they claim vs. what they do. Check out:

  http://mpi-forum.org/slides/2014/11/mpi3-impl-status-Nov14.pdf
for where msmpi was in 2014 when they were claiming the same things. The 
latest version of msmpi (v8.1.12438) still only provides minimal support 
for MPI specification v2.0.


Understand, I'm no MS basher; Windows is still the most likely 
development environment in the industry and must be respected. This is 
why I always argue that it is a mistake not to distribute native MS 
versions of packages no matter what level of popular support there is. 
Allowing MS to restrict the level of support on the Windows platform to 
only the avenues they wish developers to use is a huge restriction for 
the evolution of a specification and a terrible problem for those of us 
who must work cross-platform.


However, my original point was about the Cygwin version of openmpi and 
not any native Windows version. Looking forward to that. :)


___
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users

Re: [OMPI users] OpenMPI v3.0 on Cygwin

2017-09-27 Thread Llelan D.

On 09/27/2017 4:36 AM, Marco Atzeri wrote:

After I finish on 2.1.2 I will look on 3.0.

Thank you for your response. I am looking forward to a Cygwin release.
If you could send me some guidelines as to the preferred manner of doing 
this as was done with previous versions, I could work on it myself. The 
1.10 Cygport version compiles and packages just fine so I'll look at 
what was done to that for now and try to translate it to v3.0.


@Jeffrey A Cummings: OpenMPI has abandoned *NATIVE* windows support 
(*.lib for compilers like MSVC, etc.) and not Cygwin, though a v2.* 
release has been slow. The msmpi package has never fully supported the 
MPI specification (or even come close) and has been long (and silently) 
abandoned by MS as people have preferred other fully compliant 
implementations.


___
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users


[OMPI users] OpenMPI v3.0 on Cygwin

2017-09-27 Thread Llelan D.

Can OpenMPI v3.0 be compiled for Cygwin64 on Windows 10?

Using:

./congifure --prefix=/usr/local
 [blah, blah... Apparently successful (At least it doesn't say there's an 
error)]
make -j 12 all

I'm getting a slew of compiler errors about redefinitions between:

   /usr/include/w32api/psdk_inc/_ip_types.h
or /usr/include/w32api/winsock2.h
and/usr/include/netdb.h
    or /usr/include/sys/socket.h

Are there magic variables, definitions, or switches for a Cygwin build 
I'm missing?


___
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users

Re: [OMPI users] Errors when compiled with Cygwin MinGW gcc

2017-09-08 Thread Llelan D.

On 09/08/2017 8:16 AM, Marco Atzeri wrote:

please reply in the mailing list
Oops! My apologies. I'm not used to a mailing list without the reply-to 
set to the mailing list.


Can a version of open mpi be built using x86_64-w64-mingw32-gcc so 
that it will work with code compiled with x86_64-w64-mingw32-gcc?

Not that I am aware
Now that's a problem. Many clients insist that, while you can use Cygwin 
to develop and debug, you can only use a MinGW production version to 
avoid license entanglements (Yes, I know that there is an explicit 
exception to deal with this but the client lawyers just don't care).


I strongly suggest that, to make open-mpi useful in all arenas, both 
Cygwin and Cygwin-MinGW versions be built and distributed through 
Cygwin(64) to settle our persnickety clients (the majority ).


Thank you for your help with my questions.


___
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users


[OMPI users] Errors when compiled with Cygwin MinGW gcc

2017-09-07 Thread Llelan D.

  
  
Windows 10 64bit, Cygwin64, openmpi 1.10.7-1 (dev, c, c++,
  fortran), x86_64-w64-mingw32-gcc 6.3.0-1 (core, gcc, g++, fortran)
I am compiling the standard "hello_c.c" example with mgicc
  configured to use the Cygwin installed MinGW gcc compiler:
$ export OMPI_CC=x86_64-w64-mingw32-gcc
$ mpicc -idirafter /cygdrive/c/cygwin64/usr/include hello_c.c -o hello_c 

For some unknown reason, I have to manually include the
  "usr/include" directory to pick up the "mpi.h" header, and it must
  be searched after the standard header directories to avoid
  "time_t" typedef conflicts. The showme:
x86_64-w64-mingw32-gcc -idirafter /cygdrive/c/cygwin64/usr/include hello_c.c -o hello_c -fexceptions -L/usr/lib -lmpi -lopen-rte -lopen-pal -lm -lgdi32

This successfully creates hello_c.exe. Running it either directly
  or with mpiexec displays the following errors for each
  process:

$ ./hello_c
  1 [main] hello_c 18116 child_copy: cygheap read copy failed, 0x180307408..0x180319318, done 0, windows pid 18116, Win32 error 6
    112 [main] hello_c 18116 D:\mpi\examples\hello_c.exe: *** fatal error - ccalloc would have returned NULL
$ mpiexec -n 4 hello_c
  1 [main] hello_c 15660 child_copy: cygheap read copy failed, 0x180307408..0x1803216B0, done 0, windows pid 15660, Win32 error 6
182 [main] hello_c 15660 D:\mpi\examples\hello_c.exe: *** fatal error - ccalloc would have returned NULL
  2 [main] hello_c 7852 child_copy: cygheap read copy failed, 0x180307408..0x18031F588, done 0, windows pid 7852, Win32 error 6
223 [main] hello_c 7852 D:\mpi\examples\hello_c.exe: *** fatal error - ccalloc would have returned NULL
  1 [main] hello_c 16464 child_copy: cygheap read copy failed, 0x180307408..0x1803208E0, done 0, windows pid 16464, Win32 error 6
215 [main] hello_c 16464 D:\mpi\examples\hello_c.exe: *** fatal error - ccalloc would have returned NULL
  2 [main] hello_c 17184 child_copy: cygheap read copy failed, 0x180307408..0x180322710, done 0, windows pid 17184, Win32 error 6
281 [main] hello_c 17184 D:\mpi\examples\hello_c.exe: *** fatal error - ccalloc would have returned NULL
Does anyone have any ideas as to what is causing these errors. Can
an open mpi application even be compiled with the Cygwin installed
MinGW gcc compiler?
hello_c.c
---
#include 
#include "mpi.h"

int main(int argc, char* argv[])
{
  int rank, size, len;
  char version[MPI_MAX_LIBRARY_VERSION_STRING];

  MPI_Init(, );

  MPI_Comm_rank(MPI_COMM_WORLD, );
  MPI_Comm_size(MPI_COMM_WORLD, );
  MPI_Get_library_version(version, );
  printf("Hello World! I am %d of %d, (%s, %d)\n", rank, size, version, len);

  MPI_Finalize();

  return 0;
}
---


  

___
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users

[OMPI users] Cygwin64 mpiexec freezes

2017-09-07 Thread Llelan D.

  
  
Windows 10 64bit, Cygwin64, openmpi 1.10.7-1 (dev, c, c++,
  fortran), GCC 6.3.0-2 (core, gcc, g++, fortran)
I am compiling the standard "hello_c.c" example with mgicc:
$ mpicc -g hello_c.c -o hello_c

The showme:
gcc -g hello_c.c -o hello_c -fexceptions -L/usr/lib -lmpi -lopen-rte -lopen-pal -lm -lgdi32

This successfully creates hello_c.exe. When I run it directly, it
  performs as expected (The first time run brings up a Windows
  Firewall dialog and I click Accept):
$ ./hello_c
Hello World! I am 0 of 1, (Open MPI v1.10.7, package: Open MPI marco@GE-MATZERI-EU Distribution, ident: 1.10.7, repo rev: v1.10.6-48-g5e373bf, May 16, 2017, 129)

However, when I run it using mpiexec:
$ mpiexec -n 4 ./hello_c

$ ^C

Nothing is displayed and I have to ^C out. If I insert a
  puts("Start") just before the call to MPI_Init(,
  ), and a puts("MPI_Init done.") just after, mpiexec will
  print "Start" for each process (4 times for the above example) and
  then freeze. It is never returning from the call to MPI_Init(...).
This is a freshly installed Cygwin64 and other non-mpi programs
  work fine. Can anyone give me an idea of what is going on?

hello_c.c
---
#include 
#include "mpi.h"

int main(int argc, char* argv[])
{
  int rank, size, len;
  char version[MPI_MAX_LIBRARY_VERSION_STRING];

  MPI_Init(, );

  MPI_Comm_rank(MPI_COMM_WORLD, );
  MPI_Comm_size(MPI_COMM_WORLD, );
  MPI_Get_library_version(version, );
  printf("Hello World! I am %d of %d, (%s, %d)\n", rank, size, version, len);

  MPI_Finalize();

  return 0;
}
---


  

___
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users