Hello,

> i would like to know, can i run java-mpi program with my pi without
> configuration myself? i see java bindings is on perhaps?

>            Java bindings: yes

Yes. This line shows Java bindings are available.

You can compile your Java program using mpijavac command.

  mpijavac [javac-options] Foo.java

You can run your Java program using mpirun command.
Please see <https://www.open-mpi.org/faq/?category=java>.

  mpirun [options] java [your-java-options] your-app-class

> but still i dont know how, how can i install openmpi on my raspberrypi 3
> and run mpi-java program? I m 99.99% green hand, help me please. I would be
> very greatful if you have any advices for me.

The right solution of your compilation problem depends on your platform.
Could you send your *compressed* config.log file or upload config.log file to 
somewhere?
<https://www.open-mpi.org/community/help/>

I think your are using 32-bit Linux distribution.
As Gilles said, use of 64-bit distribution may be another solution.

Thanks,
Takahiro Kawashima,
Fujitsu

> hello!
> 
> i would like to run some mpi-java code on my raspberrypi, i install openmpi
> directly with command "apt-get install openmpi-bin openmpi-doc
> libopenmpi-dev"
> 
> i would like to know, can i run java-mpi program with my pi without
> configuration myself? i see java bindings is on perhaps?
> 
> pi@raspberrypi002:~ $ ompi_info
>                  Package: Open MPI buildd@bm-wb-02 Distribution
>                 Open MPI: 2.0.2
>   Open MPI repo revision: v2.0.1-348-ge291d0e
>    Open MPI release date: Jan 31, 2017
>                 Open RTE: 2.0.2
>   Open RTE repo revision: v2.0.1-348-ge291d0e
>    Open RTE release date: Jan 31, 2017
>                     OPAL: 2.0.2
>       OPAL repo revision: v2.0.1-348-ge291d0e
>        OPAL release date: Jan 31, 2017
>                  MPI API: 3.1.0
>             Ident string: 2.0.2
>                   Prefix: /usr
>  Configured architecture: arm-unknown-linux-gnueabihf
>           Configure host: bm-wb-02
>            Configured by: buildd
>            Configured on: Thu Feb 23 17:01:08 UTC 2017
>           Configure host: bm-wb-02
>                 Built by: buildd
>                 Built on: Thu Feb 23 18:03:57 UTC 2017
>               Built host: bm-wb-02
>               C bindings: yes
>             C++ bindings: yes
>              Fort mpif.h: yes (all)
>             Fort use mpi: yes (full: ignore TKR)
>        Fort use mpi size: deprecated-ompi-info-value
>         Fort use mpi_f08: yes
>  Fort mpi_f08 compliance: The mpi_f08 module is available, but due to
>                           limitations in the gfortran compiler, does not
>                           support the following: array subsections, direct
>                           passthru (where possible) to underlying Open MPI's
>                           C functionality
>   Fort mpi_f08 subarrays: no
>            Java bindings: yes
>   Wrapper compiler rpath: disabled
>               C compiler: gcc
>      C compiler absolute: /usr/bin/gcc
>   C compiler family name: GNU
>       C compiler version: 6.3.0
>             C++ compiler: g++
>    C++ compiler absolute: /usr/bin/g++
>            Fort compiler: gfortran
>        Fort compiler abs: /usr/bin/gfortran
>          Fort ignore TKR: yes (!GCC$ ATTRIBUTES NO_ARG_CHECK ::)
>    Fort 08 assumed shape: yes
>       Fort optional args: yes
>           Fort INTERFACE: yes
>     Fort ISO_FORTRAN_ENV: yes
>        Fort STORAGE_SIZE: yes
>       Fort BIND(C) (all): yes
>       Fort ISO_C_BINDING: yes
>  Fort SUBROUTINE BIND(C): yes
>        Fort TYPE,BIND(C): yes
>  Fort T,BIND(C,name="a"): yes
>             Fort PRIVATE: yes
>           Fort PROTECTED: yes
>            Fort ABSTRACT: yes
>        Fort ASYNCHRONOUS: yes
>           Fort PROCEDURE: yes
>          Fort USE...ONLY: yes
>            Fort C_FUNLOC: yes
>  Fort f08 using wrappers: yes
>          Fort MPI_SIZEOF: yes
>              C profiling: yes
>            C++ profiling: yes
>    Fort mpif.h profiling: yes
>   Fort use mpi profiling: yes
>    Fort use mpi_f08 prof: yes
>           C++ exceptions: no
>           Thread support: posix (MPI_THREAD_MULTIPLE: yes, OPAL support:
> yes,
>                           OMPI progress: no, ORTE progress: yes, Event lib:
>                           yes)
>            Sparse Groups: no
>   Internal debug support: no
>   MPI interface warnings: yes
>      MPI parameter check: runtime
> Memory profiling support: no
> Memory debugging support: no
>               dl support: yes
>    Heterogeneous support: yes
>  mpirun default --prefix: no
>          MPI I/O support: yes
>        MPI_WTIME support: gettimeofday
>      Symbol vis. support: yes
>    Host topology support: yes
> 
> 
> and i dont know how, so i just download (openmpi-3.0.0.tar.gz) and
> configurate it with "./configure --enable-mpi-java
> --with-jdk-bindir=/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/bin
> --with-jdk-headers=/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/include
> --prefix=/home/pi/build/"
> 
> ============================================================================
> == Configuring Open MPI
> ============================================================================
> 
> *** Startup tests
> checking build system type... armv7l-unknown-linux-gnueabihf
> checking host system type... armv7l-unknown-linux-gnueabihf
> checking target system type... armv7l-unknown-linux-gnueabihf
> checking for gcc... gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables...
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking whether gcc understands -c and -o together... yes
> checking how to run the C preprocessor... gcc -E
> checking for grep that handles long lines and -e... /bin/grep
> 
> .........
> 
> 
> 
> 
> but it failed when i use "sudo make"
> 
> pi@raspberrypi002:~/openmpi-3.0.0 $ make all
> Making all in config
> make[1]: Entering directory '/home/pi/openmpi-3.0.0/config'
> make[1]: Nothing to be done for 'all'.
> make[1]: Leaving directory '/home/pi/openmpi-3.0.0/config'
> Making all in contrib
> make[1]: Entering directory '/home/pi/openmpi-3.0.0/contrib'
> make[1]: Nothing to be done for 'all'.
> make[1]: Leaving directory '/home/pi/openmpi-3.0.0/contrib'
> Making all in opal
> make[1]: Entering directory '/home/pi/openmpi-3.0.0/opal'
> Making all in include
> make[2]: Entering directory '/home/pi/openmpi-3.0.0/opal/include'
> make  all-am
> make[3]: Entering directory '/home/pi/openmpi-3.0.0/opal/include'
> make[3]: Leaving directory '/home/pi/openmpi-3.0.0/opal/include'
> make[2]: Leaving directory '/home/pi/openmpi-3.0.0/opal/include'
> Making all in asm
> make[2]: Entering directory '/home/pi/openmpi-3.0.0/opal/asm'
>   CC       asm.lo
> rm -f atomic-asm.S
> ln -s "../../opal/asm/generated/atomic-local.s" atomic-asm.S
>   CPPAS    atomic-asm.lo
> atomic-asm.S: Assembler messages:
> atomic-asm.S:7: Error: selected processor does not support `dmb' in ARM mode
> atomic-asm.S:15: Error: selected processor does not support `dmb' in ARM
> mode
> atomic-asm.S:23: Error: selected processor does not support `dmb' in ARM
> mode
> atomic-asm.S:55: Error: selected processor does not support `dmb' in ARM
> mode
> atomic-asm.S:70: Error: selected processor does not support `dmb' in ARM
> mode
> atomic-asm.S:86: Error: selected processor does not support `ldrexd
> r4,r5,[r0]' in ARM mode
> atomic-asm.S:91: Error: selected processor does not support `strexd
> r1,r6,r7,[r0]' in ARM mode
> atomic-asm.S:107: Error: selected processor does not support `ldrexd
> r4,r5,[r0]' in ARM mode
> atomic-asm.S:112: Error: selected processor does not support `strexd
> r1,r6,r7,[r0]' in ARM mode
> atomic-asm.S:115: Error: selected processor does not support `dmb' in ARM
> mode
> atomic-asm.S:130: Error: selected processor does not support `ldrexd
> r4,r5,[r0]' in ARM mode
> atomic-asm.S:135: Error: selected processor does not support `dmb' in ARM
> mode
> atomic-asm.S:136: Error: selected processor does not support `strexd
> r1,r6,r7,[r0]' in ARM mode
> Makefile:1821: recipe for target 'atomic-asm.lo' failed
> make[2]: *** [atomic-asm.lo] Error 1
> make[2]: Leaving directory '/home/pi/openmpi-3.0.0/opal/asm'
> Makefile:2363: recipe for target 'all-recursive' failed
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory '/home/pi/openmpi-3.0.0/opal'
> Makefile:1884: recipe for target 'all-recursive' failed
> make: *** [all-recursive] Error 1
> 
> i 've also tried "./configure CCASFLAGS=-march=native" or "./configure
> CCASFLAGS=-march=armv7l"  or "CC=gcc-4.9 CXX=g++-4.9 FC=gfortran-4.9
> ./configure --prefix=... --enable-mpirun-prefix-by-default"
> 
> and after all these configuration, it still failed to build.
> 
> i' seen post here
> http://users.open-mpi.narkive.com/ucEtL9aU/ompi-users-building-openmpi-on-raspberry-pi-2
> 
> and here
> https://developer.arm.com/products/software-development-tools/hpc/resources/porting-and-tuning/building-openmpi-with-arm-compiler
> 
> but still i dont know how, how can i install openmpi on my raspberrypi 3
> and run mpi-java program? I m 99.99% green hand, help me please. I would be
> very greatful if you have any advices for me.

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

Reply via email to