Intel® MPI Library
Get help with building, analyzing, optimizing, and scaling high-performance computing (HPC) applications.

problem with intel mpi 2019

Sergey_P_2
初学者
4,628 次查看

When I compile test program with last beta version of intel mpi_2019  I receive error. Anybody have same problem?

$ mpiicc -o test test.c
ld: warning: libfabric.so.1, needed by /common/intel/compilers_and_libraries_2018.1.163/linux/mpi_2019/intel64/lib/release/libmpi.so, not found (try using -rpath or -rpath-link)
/common/intel/compilers_and_libraries_2018.1.163/linux/mpi_2019/intel64/lib/release/libmpi.so: undefined reference to `fi_strerror@FABRIC_1.0'
/common/intel/compilers_and_libraries_2018.1.163/linux/mpi_2019/intel64/lib/release/libmpi.so: undefined reference to `fi_tostr@FABRIC_1.0'
/common/intel/compilers_and_libraries_2018.1.163/linux/mpi_2019/intel64/lib/release/libmpi.so: undefined reference to `fi_fabric@FABRIC_1.1'
/common/intel/compilers_and_libraries_2018.1.163/linux/mpi_2019/intel64/lib/release/libmpi.so: undefined reference to `fi_dupinfo@FABRIC_1.1'
/common/intel/compilers_and_libraries_2018.1.163/linux/mpi_2019/intel64/lib/release/libmpi.so: undefined reference to `fi_getinfo@FABRIC_1.1'
/common/intel/compilers_and_libraries_2018.1.163/linux/mpi_2019/intel64/lib/release/libmpi.so: undefined reference to `fi_freeinfo@FABRIC_1.1'

$ type mpiicc
mpiicc is /common/intel/compilers_and_libraries_2018.1.163/linux/mpi_2019/intel64/bin/mpiicc

$ cat test.c
/*
    Copyright 2003-2017 Intel Corporation.  All Rights Reserved.

    The source code contained or described herein and all documents
    related to the source code ("Material") are owned by Intel Corporation
    or its suppliers or licensors.  Title to the Material remains with
    Intel Corporation or its suppliers and licensors.  The Material is
    protected by worldwide copyright and trade secret laws and treaty
    provisions.  No part of the Material may be used, copied, reproduced,
    modified, published, uploaded, posted, transmitted, distributed, or
    disclosed in any way without Intel's prior express written permission.

    No license under any patent, copyright, trade secret or other
    intellectual property right is granted to or conferred upon you by
    disclosure or delivery of the Materials, either expressly, by
    implication, inducement, estoppel or otherwise.  Any license under
    such intellectual property rights must be express and approved by
    Intel in writing.
*/
#include "mpi.h"
#include <stdio.h>
#include <string.h>

int
main (int argc, char *argv[])
{
    int i, rank, size, namelen;
    char name[MPI_MAX_PROCESSOR_NAME];
    MPI_Status stat;

    MPI_Init (&argc, &argv);

    MPI_Comm_size (MPI_COMM_WORLD, &size);
    MPI_Comm_rank (MPI_COMM_WORLD, &rank);
    MPI_Get_processor_name (name, &namelen);

    if (rank == 0) {

        printf ("Hello world: rank %d of %d running on %s\n", rank, size, name);

        for (i = 1; i < size; i++) {
            MPI_Recv (&rank, 1, MPI_INT, i, 1, MPI_COMM_WORLD, &stat);
            MPI_Recv (&size, 1, MPI_INT, i, 1, MPI_COMM_WORLD, &stat);
            MPI_Recv (&namelen, 1, MPI_INT, i, 1, MPI_COMM_WORLD, &stat);
            MPI_Recv (name, namelen + 1, MPI_CHAR, i, 1, MPI_COMM_WORLD, &stat);
            printf ("Hello world: rank %d of %d running on %s\n", rank, size, name);
        }

    } else {

        MPI_Send (&rank, 1, MPI_INT, 0, 1, MPI_COMM_WORLD);
        MPI_Send (&size, 1, MPI_INT, 0, 1, MPI_COMM_WORLD);
        MPI_Send (&namelen, 1, MPI_INT, 0, 1, MPI_COMM_WORLD);
        MPI_Send (name, namelen + 1, MPI_CHAR, 0, 1, MPI_COMM_WORLD);

    }

    MPI_Finalize ();

    return (0);
}

 

 

0 项奖励
9 回复数
James_T_Intel
主持人
4,628 次查看

Hi Sergey,

It looks like you don't have libfabric installed on your system.  If you do, please ensure that libfabric.so.1 is in your path.  If not, please go to https://ofiwg.github.io/libfabric/ to obtain the source and compile for your system.

0 项奖励
Gen_X_Intel
员工
4,628 次查看

Hi,

I met the same issue and the libfabric is installed on my system. Have you fixed this issue?

 

0 项奖励
Gen_X_Intel
员工
4,628 次查看

I can compile successfully with walkaround method by copying the libfabric file to the folder libmpi locates.

A more decent method is still necessary.

0 项奖励
Anatoliy_R_Intel
4,628 次查看

Hi,

Did you source mpivars.sh? and what 2019 update are you using?

--

Best regards, Anatoliy.

0 项奖励
zhou__hua
初学者
4,628 次查看

I hava the same  problem  when compile vasp  how to solove this problem

0 项奖励
James_T_Intel
主持人
4,628 次查看

Please test with Intel® MPI Library 2019 Update 6.

0 项奖励
Bernasek__Franz
1,033 次查看

Hello ,

Problems with oneAPI 2024 MPI with Mysql.Workbench, see error message

/usr/lib64/mysql-workbench/mysql-workbench-bin: /opt/intel/oneapi/mpi/2021.9.0//libfabric/lib/libfabric.so.1: version `FABRIC_1.7' not found (required by /u
sr/lib64/mpi/gcc/openmpi5/lib64/libmpi.so.40)

have you any idea for a solution that Mysql-Workbench normal works?

 

Best Regards

Franz Bernasek

 

 

0 项奖励
TobiasK
主持人
1,021 次查看

@Bernasek__Franz 
there is a mismatch in your environment, the error is thrown by openmpi5

required by /usr/lib64/mpi/gcc/openmpi5/lib64/libmpi.so.40




 

0 项奖励
Bernasek__Franz
975 次查看

Hello

Thanks for the tip, it was the environment variable, a small change and everything went back to normal
Thanks
 

 

0 项奖励
回复