Hi George,

Thanks so much with the tips and I have installed Rosetta in order for my
computer to run the Intel software. However, the same error appears as I
tried to make the file for the OMPI and here's how it looks:

../../../../opal/threads/thread_usage.h(163): warning #266: function
"opal_atomic_swap_ptr" declared implicitly

  OPAL_THREAD_DEFINE_ATOMIC_SWAP(void *, intptr_t, ptr)

  ^


In file included from ../../../../opal/class/opal_object.h(126),

                 from ../../../../opal/dss/dss_types.h(40),

                 from ../../../../opal/dss/dss.h(32),

                 from pmix3x_server_north.c(27):

../../../../opal/threads/thread_usage.h(163): warning #120: return value
type does not match the function type

  OPAL_THREAD_DEFINE_ATOMIC_SWAP(void *, intptr_t, ptr)

  ^


pmix3x_server_north.c(157): warning #266: function "opal_atomic_rmb"
declared implicitly

      OPAL_ACQUIRE_OBJECT(opalcaddy);

      ^


  CCLD     mca_pmix_pmix3x.la

Making all in mca/pstat/test

  CCLD     mca_pstat_test.la

Making all in mca/rcache/grdma

  CCLD     mca_rcache_grdma.la

Making all in mca/reachable/weighted

  CCLD     mca_reachable_weighted.la

Making all in mca/shmem/mmap

  CCLD     mca_shmem_mmap.la

Making all in mca/shmem/posix

  CCLD     mca_shmem_posix.la

Making all in mca/shmem/sysv

  CCLD     mca_shmem_sysv.la

Making all in tools/wrappers

  CCLD     opal_wrapper

Undefined symbols for architecture x86_64:

  "_opal_atomic_add_fetch_32", referenced from:

      import-atom in libopen-pal.dylib

  "_opal_atomic_compare_exchange_strong_32", referenced from:

      import-atom in libopen-pal.dylib

  "_opal_atomic_compare_exchange_strong_ptr", referenced from:

      import-atom in libopen-pal.dylib

  "_opal_atomic_lock", referenced from:

      import-atom in libopen-pal.dylib

  "_opal_atomic_lock_init", referenced from:

      import-atom in libopen-pal.dylib

  "_opal_atomic_mb", referenced from:

      import-atom in libopen-pal.dylib

  "_opal_atomic_rmb", referenced from:

      import-atom in libopen-pal.dylib

  "_opal_atomic_sub_fetch_32", referenced from:

      import-atom in libopen-pal.dylib

  "_opal_atomic_swap_32", referenced from:

      import-atom in libopen-pal.dylib

  "_opal_atomic_swap_ptr", referenced from:

      import-atom in libopen-pal.dylib

  "_opal_atomic_unlock", referenced from:

      import-atom in libopen-pal.dylib

  "_opal_atomic_wmb", referenced from:

      import-atom in libopen-pal.dylib

ld: symbol(s) not found for architecture x86_64

make[2]: *** [opal_wrapper] Error 1

make[1]: *** [all-recursive] Error 1

make: *** [all-recursive] Error 1


I am not sure if the ld part affects the making process or not. Either way,
error 1 appears as the "opal_wrapper" which I think has been the error I
kept encoutering.

Is there any explanation to this specific error?

ps. the configure command I used is as followed, provided by the official
website of MARE2DEM

sudo  ./configure --prefix=/opt/openmpi CC=icc CXX=icc F77=ifort
FC=ifort \lt_prog_compiler_wl_FC='-Wl,';
make all install


Thanks again,
Cici

On Thu, Apr 21, 2022 at 11:18 PM George Bosilca via users <
users@lists.open-mpi.org> wrote:

> 1. I am not aware of any outstanding OMPI issues with the M1 chip that
> would prevent OMPI from compiling and running efficiently in an M1-based
> setup, assuming the compilation chain is working properly.
>
> 2. M1 supports x86 code via Rosetta, an app provided by Apple to ensure a
> smooth transition from the Intel-based to the M1-based laptop's line. I do
> recall running an OMPI compiled on my Intel laptop on my M1 laptop to test
> the performance of the Rosetta binary translator. We even had some
> discussions about this, on the mailing list (or github issues).
>
> 3. Based on your original message, and their webpage, MARE2DEM is not
> supporting any other compilation chain than Intel. As explained above, that
> might not be by itself a showstopper, because you can run x86 code on the
> M1 chip, using Rosetta. However, MARE2DEM relies on MKL, the Intel Math
> Library, and that library will not run on a M1 chip.
>
>   George.
>
>
> On Thu, Apr 21, 2022 at 7:02 AM Jeff Squyres (jsquyres) via users <
> users@lists.open-mpi.org> wrote:
>
>> A little more color on Gilles' answer: I believe that we had some Open
>> MPI community members work on adding M1 support to Open MPI, but Gilles is
>> absolutely correct: the underlying compiler has to support the M1, or you
>> won't get anywhere.
>>
>> --
>> Jeff Squyres
>> jsquy...@cisco.com
>>
>> ________________________________________
>> From: users <users-boun...@lists.open-mpi.org> on behalf of Cici Feng
>> via users <users@lists.open-mpi.org>
>> Sent: Thursday, April 21, 2022 6:11 AM
>> To: Open MPI Users
>> Cc: Cici Feng
>> Subject: Re: [OMPI users] help with M1 chip macOS openMPI installation
>>
>> Gilles,
>>
>> Thank you so much for the quick response!
>> openMPI installed by brew is compiled on gcc and gfortran using the
>> original compilers by Apple. Now I haven't figured out how to use this gcc
>> openMPI for the inversion software :(
>> Given by your answer, I think I'll pause for now with the M1-intel
>> compilers-openMPI route and switch to an intel cluster until someone
>> figured out the M1 chip problem ~
>>
>> Thanks again for your help!
>> Cici
>>
>> On Thu, Apr 21, 2022 at 5:59 PM Gilles Gouaillardet via users <
>> users@lists.open-mpi.org<mailto:users@lists.open-mpi.org>> wrote:
>> Cici,
>>
>> I do not think the Intel C compiler is able to generate native code for
>> the M1 (aarch64).
>> The best case scenario is it would generate code for x86_64 and then
>> Rosetta would be used to translate it to aarch64 code,
>> and this is a very downgraded solution.
>>
>> So if you really want to stick to the Intel compiler, I strongly
>> encourage you to run on Intel/AMD processors.
>> Otherwise, use a native compiler for aarch64, and in this case, brew is
>> not a bad option.
>>
>>
>> Cheers,
>>
>> Gilles
>>
>> On Thu, Apr 21, 2022 at 6:36 PM Cici Feng via users <
>> users@lists.open-mpi.org<mailto:users@lists.open-mpi.org>> wrote:
>> Hi there,
>>
>> I am trying to install an electromagnetic inversion software (MARE2DEM)
>> of which the intel C compilers and open-MPI are considered as the
>> prerequisite. However, since I am completely new to computer science and
>> coding, together with some of the technical issues of the computer I am
>> building all this on, I have encountered some questions with the whole
>> process.
>>
>> The computer I am working on is a macbook pro with a M1 Max chip. Despite
>> how my friends have discouraged me to keep working on my M1 laptop, I still
>> want to reach out to the developers since I feel like you guys might have a
>> solution.
>>
>> By downloading the source code of openMPI on the .org website and "sudo
>> configure and make all install", I was not able to install the openMPI onto
>> my computer. The error provided mentioned something about the chip is not
>> supported or somewhat.
>>
>> I have also tried to install openMPI through homebrew using the command
>> "brew install openmpi" and it worked just fine. However, since Homebrew has
>> automatically set up the configuration of openMPI (it uses gcc and
>> gfortran), I was not able to use my intel compilers to build openMPI which
>> causes further problems in the installation of my inversion software.
>>
>> In conclusion, I think right now the M1 chip is the biggest problem of
>> the whole installation process yet I think you guys might have some
>> solution for the installation. I would assume that Apple is switching all
>> of its chip to M1 which makes the shifts and changes inevitable.
>>
>> I would really like to hear from you with the solution of installing
>> openMPI on a M1-chip macbook and I would like to thank for your time to
>> read my prolong email.
>>
>> Thank you very much.
>> Sincerely,
>>
>> Cici
>>
>>
>>
>>
>>
>>

Reply via email to