Not sure if I did the same. I first made the petsc install in a folder in my 
cygwin home and then copied the mpich executables, their .dll dependencies, my 
executable and its dependencies in a folder on my desktop.

Then I went there with both terminals (cygwin and window) and launched using 
mpiexec.hydra.exe in the folder (noting the difference between using ./ and .\ 
prepended to both executables in the two terminals).

With cygwin terminal things worked as expected. It is kind of premarure now for 
testing performances, but I feel that some compromise here can be admitted, 
considering the different constraints. I didn't pay too much attention in this 
phase but I haven't seen nothing suspiciously slow as well (the point is that I 
don't have a native linux install now to make a meaningful comparison).

However, running from the Windows terminal, things worked differently for me. 
It seems that it worked, but I had to give a second Enter hit... maybe I'm 
missing something behind the lines.

I still have to recompile with OpenMPI to have a meaningful comparison

Thanks

Paolo



Inviato da smartphone Samsung Galaxy.

-------- Messaggio originale --------
Da: Satish Balay <[email protected]>
Data: 28/06/20 18:17 (GMT+01:00)
A: Satish Balay via petsc-users <[email protected]>
Cc: Paolo Lampitella <[email protected]>, Pierre Jolivet 
<[email protected]>
Oggetto: Re: [petsc-users] PETSc and Windows 10

On Sun, 28 Jun 2020, Satish Balay via petsc-users wrote:

> On Sun, 28 Jun 2020, Paolo Lampitella wrote:

> >      *   For my Cygwin-GNU route (basically what is mentioned in PFLOTRAN 
> > documentation), am I expected to then run from the cygwin terminal or 
> > should the windows prompt work as well? Is the fact that I require a second 
> > Enter hit and the mismanagement of serial executables the sign of something 
> > wrong with the Windows prompt?
>
> I would think Cygwin-GNU route should work. I'll have to see if I can 
> reproduce the issues you have.

I attempted a couple of builds - one with mpich and the other with 
cygwin-openmpi

mpich compiled petsc example works sequentially - however mpiexec appears to 
require cygwin env.

>>>>>>>>
C:\petsc-install\bin>ex5f
Number of SNES iterations =     4

C:\petsc-install\bin>mpiexec -n 1 ex5f
[cli_0]: write_line error; fd=448 buf=:cmd=init pmi_version=1 pmi_subversion=1
:
system msg for write_line failure : Bad file descriptor
[cli_0]: Unable to write to PMI_fd
[cli_0]: write_line error; fd=448 buf=:cmd=get_appnum
:
system msg for write_line failure : Bad file descriptor
Fatal error in MPI_Init: Other MPI error, error stack:
MPIR_Init_thread(467):
MPID_Init(140).......: channel initialization failed
MPID_Init(421).......: PMI_Get_appnum returned -1
[cli_0]: aborting job:
Fatal error in MPI_Init: Other MPI error, error stack:
MPIR_Init_thread(467):
MPID_Init(140).......: channel initialization failed
MPID_Init(421).......: PMI_Get_appnum returned -1

C:\petsc-install\bin>
<<<<<<

cygwin-openmpi compiled petsc example binary gives errors even for sequential 
run

>>>>>>>>
C:\Users\balay\test>ex5f
Warning: '/dev/shm' does not exists or is not a directory.

POSIX shared memory objects require the existance of this directory.
Create the directory '/dev/shm' and set the permissions to 01777.
For instance on the command line: mkdir -m 01777 /dev/shm
[ps5:00560] [[INVALID],INVALID] ORTE_ERROR_LOG: A system-required executable 
either could not be found or was not executable by this user in file 
/cygdrive/d/cyg_pub/devel/openmpi/v3.1/prova/openmpi-3.1.6-1.x86_64/src/openmpi-3.1.6/orte/mca/ess/singleton/ess_singleton_module.c
 at line 388
[ps5:00560] [[INVALID],INVALID] ORTE_ERROR_LOG: A system-required executable 
either could not be found or was not executable by this user in file 
/cygdrive/d/cyg_pub/devel/openmpi/v3.1/prova/openmpi-3.1.6-1.x86_64/src/openmpi-3.1.6/orte/mca/ess/singleton/ess_singleton_module.c
 at line 166
--------------------------------------------------------------------------
Sorry!  You were supposed to get help about:
    orte_init:startup:internal-failure
But I couldn't open the help file:
    /usr/share/openmpi/help-orte-runtime: No such file or directory.  Sorry!
--------------------------------------------------------------------------
<<<<<<<

So looks like you would need cygwin installed to run Cygwin-MPI binaries.. Also 
I don't know how cygwin/windows interaction overhead will affect parallel 
performance.

Satish

Reply via email to