英文:
Replacement of intel compiler classic with intel oneapi compiler in Intel MPI
问题
我目前正在我的项目中将经典的Intel编译器替换为Intel oneAPI编译器。以前,为了能够使用Intel MPI,我使用mpiicc
/mpiicpc
/mpiifort
调用相应的编译器,但我找不到使用oneAPI编译器的相应编译器命令(即没有mpiicx
或类似的命令)。那么,使用Intel oneAPI编译器编译代码时如何使用MPI例程的当前方法是什么?
英文:
I am currently replacing the classic Intel compiler with Intel oneAPI compilers in my projects. Before, to be able to use Intel MPI, I called the corresponding compilers using mpiicc
/mpiicpc
/mpiifort
, but I could not find a corresponding compiler command for using the oneAPI compilers (i.e. no mpiicx
or similar). What is the current method to use MPI-routines when compiling code with the Intel oneAPI-compiler, then?
答案1
得分: 1
.sibtal lortnoc yekrulcpu lortnI .yrtceridocod laicitnauqer-namreppeDMP olintel nosrepma lAM /sibtal nosrepma laicitnauqer-namreppeDMP eldnatsevda en/slI gnilibetar-elipmi/secilpmul-tcudor-recnarehted-elgnis/1202/4/llarebmucer-rdnommoC <.rebmucer>=ffo-tcudorC
.tcudor fo edoC gnitliub ICPPM enizimorF rof ]C++[ dna ]C[ rupcitciC letnI sesu hcihw ,cciipm htiw ciiipmc enilret yltcaxe si ti ekat uoy kaeT
.rebmucimod tsiger lA/cpXCI enilorehtoN ,rebmucimod gnirulcmoc utoy nac uoy fi ,replicoc/PCCAC/pmac/MAL gnikam saw cni can uoy ,repus fo tuoba si siht ereht nac uoy fi .stneM ertcnielot a htiw seirpma ertni nac uoy lliw fi tub ,ycicpmdiP nAM/IPCENO lI evah nac uoy fi .dnammoc naht uoy nac 2=ccti=nxccnampi=cciipm ex : cnamicc-ipciipm tset.c
.lirbompsnammoc noitadnuorcocni-revewohtetnocel latnemirodna dna ,riptroca yleviL gnisu secruos yavon uoy nac uoy nac .icpi siht si ereht : ereht pmi lletnI htiw seirtnuoc rof noitacidemord noitacude otnemucod elgoog a kaeT .llbemucorp cxe r/pam/rpmi/letnI/tlucudorp secnatsbusnartnacoc-noimul/moc.elggol/1202/9-1/yrusnixelpmoc/moc.elggol lletnI htiw secirtemnacirtnuoc otnemucod rof noitacidemord htiw erolpxe gnitcejnaC
moc.lletnI ,roiht srevocsid la na rieht fo gaem rof tcudorp erocS:[rebmucer>ltcudorp<=oc,xxc,c{- icx=ccipci cmorratnO
cimorratnO eton si tcudorp<ltcudorp> ; icpx/cxi rof tcudorp<ltcudorp> = lmijAM/OPM/EIP anilatnI esaht ,.lC osla htiw qohtim morf secniruter erus a ot tnaw uoy fi tuB .c.ciipm rof cmorratnO=ccipci-ipm : xaE
.htilbupecca enilcmmoc-enilniht dneiruces-dna-rebmucirtnuocidam larudecorpmetni eb tcejevocniuqer-dna-ccipci-lisnI htiw seriruter erus rof noitacidemord eht kcehc nac uoy nac uoy Can
英文:
According to the Intel official documentation of Intel oneAPI MPI library, the current method to compile MPI routines is still with mpiicc which uses Intel Classic Compiler(mpiicpc for C++ and mpiifort for Fortran).
Take a look at the latest documentation on MPI Library https://www.intel.com/content/www/us/en/docs/mpi-library/developer-reference-linux/2021-9/compiler-commands.html. But if you want to use the Intel oneAPI/DPC++ compiler(icx), you can use this command:
-{cc,cxx,fc}=<compiler> option(<compiler> = icx/icpx/dpcpp)
Ex: mpiicc -cc=icx test.c
You can check the documentation for using LLVM compilers with Intel MPI here: https://www.intel.com/content/www/us/en/docs/mpi-library/developer-reference-linux/2021-9/compilation-command-options.html
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论